Fix compilation issues on rhel's 4.18 kernel

RHELs patched kernel needs additional configure.d test in order to
configure OpenCAS. This patch implements this.

Signed-off-by: Krzysztof Majzerowicz-Jaszcz <krzysztof.majzerowicz-jaszcz@intel.com>
This commit is contained in:
Krzysztof Majzerowicz-Jaszcz 2022-06-10 13:18:32 +02:00
parent f1d22fab96
commit 24fd2d1140

View File

@ -9,28 +9,39 @@
check() { check() {
cur_name=$(basename $2) cur_name=$(basename $2)
config_file_path=$1 config_file_path=$1
if compile_module $cur_name "bdev_disk_changed(NULL, false);" "linux/genhd.h" if compile_module $cur_name "bdev_disk_changed((struct block_device *)NULL, false);" "linux/genhd.h"
then then
echo $cur_name "1" >> $config_file_path echo $cur_name "1" >> $config_file_path
else elif compile_module $cur_name "bdev_disk_changed((struct gendisk *)NULL, false);" "linux/genhd.h"
then
echo $cur_name "2" >> $config_file_path echo $cur_name "2" >> $config_file_path
else
echo $cur_name "3" >> $config_file_path
fi fi
} }
apply() { apply() {
case "$1" in case "$1" in
"1") "1")
add_function "
static inline void cas_reread_partitions(struct block_device *bdev)
{
bdev_disk_changed(bdev, false);
}" ;;
"2")
add_function " add_function "
static inline void cas_reread_partitions(struct block_device *bdev) static inline void cas_reread_partitions(struct block_device *bdev)
{ {
bdev_disk_changed(bdev->bd_disk, false); bdev_disk_changed(bdev->bd_disk, false);
}" ;; }" ;;
"2") "3")
add_function " add_function "
static inline void cas_reread_partitions(struct block_device *bdev) static inline void cas_reread_partitions(struct block_device *bdev)
{ {
ioctl_by_bdev(bdev, BLKRRPART, (unsigned long)NULL); ioctl_by_bdev(bdev, BLKRRPART, (unsigned long)NULL);
}" ;; }" ;;
*) *)
exit 1 exit 1
esac esac