configure: bio dev accessor in separate file

Signed-off-by: Michal Mielewczyk <michal.mielewczyk@intel.com>
This commit is contained in:
Michal Mielewczyk 2019-09-06 05:13:33 -04:00
parent 02ce30adf5
commit c6ff665c38
2 changed files with 42 additions and 10 deletions

View File

@ -0,0 +1,40 @@
#!/bin/bash
#
# Copyright(c) 2012-2019 Intel Corporation
# SPDX-License-Identifier: BSD-3-Clause-Clear
#
. $(dirname $3)/conf_framework
check() {
cur_name=$(basename $2)
config_file_path=$1
if compile_module $cur_name "struct bio b;bio_dev(&b);" "linux/bio.h" "linux/genhd.h"
then
echo $cur_name "1" >> $config_file_path
elif compile_module $cur_name "struct bio b;b.bi_bdev" "linux/bio.h"
then
echo $cur_name "2" >> $config_file_path
else
echo $cur_name "X" >> $config_file_path
fi
}
apply() {
case "$1" in
"1")
add_define "CAS_BIO_SET_DEV(bio, bdev) \\
bio_set_dev(bio, bdev)"
add_define "CAS_BIO_GET_DEV(bio) \\
bio->bi_disk" ;;
"2")
add_define "CAS_BIO_SET_DEV(bio, bdev) \\
bio->bi_bdev = bdev"
add_define "CAS_BIO_GET_DEV(bio) \\
bio->bi_bdev->bd_disk" ;;
*)
exit 1
esac
}
conf_run $@

View File

@ -27,21 +27,13 @@ apply() {
static inline unsigned long cas_global_zone_page_state(enum zone_stat_item item)
{
return global_zone_page_state(item);
}"
add_define "CAS_BIO_SET_DEV(bio, bdev) \\
bio_set_dev(bio, bdev)"
add_define "CAS_BIO_GET_DEV(bio) \\
bio->bi_disk" ;;
}" ;;
"2")
add_function "
static inline unsigned long cas_global_zone_page_state(enum zone_stat_item item)
{
return global_page_state(item);
}"
add_define "CAS_BIO_SET_DEV(bio, bdev) \\
bio->bi_bdev = bdev"
add_define "CAS_BIO_GET_DEV(bio) \\
bio->bi_bdev->bd_disk" ;;
}" ;;
*)
exit 1
esac