Kernel 6.0 support
This patch introduces kernel 6.0 support for Open CAS Signed-off-by: Krzysztof Majzerowicz-Jaszcz <krzysztof.majzerowicz-jaszcz@intel.com>
This commit is contained in:
45
configure.d/1_cleanup_disk.conf
Normal file
45
configure.d/1_cleanup_disk.conf
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright(c) 2012-2022 Intel Corporation
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
. $(dirname $3)/conf_framework.sh
|
||||
|
||||
|
||||
check() {
|
||||
cur_name=$(basename $2)
|
||||
config_file_path=$1
|
||||
if compile_module $cur_name "blk_cleanup_disk(NULL);" "linux/blk-mq.h"
|
||||
then
|
||||
echo $cur_name 1 >> $config_file_path
|
||||
else
|
||||
echo $cur_name 2 >> $config_file_path
|
||||
fi
|
||||
}
|
||||
|
||||
apply() {
|
||||
case "$1" in
|
||||
"1")
|
||||
add_function "
|
||||
static inline void cas_cleanup_disk(struct gendisk *gd)
|
||||
{
|
||||
blk_cleanup_disk(gd);
|
||||
}"
|
||||
;;
|
||||
|
||||
"2")
|
||||
|
||||
add_function "
|
||||
static inline void cas_cleanup_disk(struct gendisk *gd)
|
||||
{
|
||||
put_disk(gd);
|
||||
}"
|
||||
;;
|
||||
|
||||
*)
|
||||
exit 1
|
||||
esac
|
||||
}
|
||||
|
||||
conf_run $@
|
||||
45
configure.d/1_cleanup_queue.conf
Normal file
45
configure.d/1_cleanup_queue.conf
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright(c) 2012-2022 Intel Corporation
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
. $(dirname $3)/conf_framework.sh
|
||||
|
||||
|
||||
check() {
|
||||
cur_name=$(basename $2)
|
||||
config_file_path=$1
|
||||
if compile_module $cur_name "blk_cleanup_queue(NULL);" "linux/blk-mq.h"
|
||||
then
|
||||
echo $cur_name 1 >> $config_file_path
|
||||
else
|
||||
echo $cur_name 2 >> $config_file_path
|
||||
fi
|
||||
}
|
||||
|
||||
apply() {
|
||||
case "$1" in
|
||||
"1")
|
||||
add_function "
|
||||
static inline void cas_cleanup_queue(struct request_queue *q)
|
||||
{
|
||||
blk_cleanup_queue(q);
|
||||
}"
|
||||
;;
|
||||
|
||||
"2")
|
||||
|
||||
add_function "
|
||||
static inline void cas_cleanup_queue(struct request_queue *q)
|
||||
{
|
||||
blk_mq_destroy_queue(q);
|
||||
}"
|
||||
;;
|
||||
|
||||
*)
|
||||
exit 1
|
||||
esac
|
||||
}
|
||||
|
||||
conf_run $@
|
||||
46
configure.d/1_has_discard_support.conf
Normal file
46
configure.d/1_has_discard_support.conf
Normal file
@@ -0,0 +1,46 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright(c) 2012-2022 Intel Corporation
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
. $(dirname $3)/conf_framework.sh
|
||||
|
||||
|
||||
check() {
|
||||
cur_name=$(basename $2)
|
||||
config_file_path=$1
|
||||
if compile_module $cur_name "struct request_queue q;blk_queue_discard(&q);" "linux/blk-mq.h"
|
||||
then
|
||||
echo $cur_name 1 >> $config_file_path
|
||||
else
|
||||
echo $cur_name 2 >> $config_file_path
|
||||
fi
|
||||
}
|
||||
|
||||
apply() {
|
||||
case "$1" in
|
||||
"1")
|
||||
add_function "
|
||||
static inline int cas_has_discard_support(struct block_device *bd)
|
||||
{
|
||||
struct request_queue *q = bdev_get_queue(bd);
|
||||
return (int)blk_queue_discard(q);
|
||||
}"
|
||||
;;
|
||||
|
||||
"2")
|
||||
|
||||
add_function "
|
||||
static inline int cas_has_discard_support(struct block_device *bd)
|
||||
{
|
||||
return !!bdev_max_discard_sectors(bd);
|
||||
}"
|
||||
;;
|
||||
|
||||
*)
|
||||
exit 1
|
||||
esac
|
||||
}
|
||||
|
||||
conf_run $@
|
||||
@@ -36,7 +36,7 @@ apply() {
|
||||
add_function "
|
||||
static inline void cas_cleanup_mq_disk(struct cas_exp_obj *exp_obj)
|
||||
{
|
||||
blk_cleanup_disk(exp_obj->gd);
|
||||
cas_cleanup_disk(exp_obj->gd);
|
||||
}"
|
||||
;;
|
||||
|
||||
45
configure.d/2_set_discard_flag.conf
Normal file
45
configure.d/2_set_discard_flag.conf
Normal file
@@ -0,0 +1,45 @@
|
||||
#!/bin/bash
|
||||
#
|
||||
# Copyright(c) 2012-2022 Intel Corporation
|
||||
# SPDX-License-Identifier: BSD-3-Clause
|
||||
#
|
||||
|
||||
. $(dirname $3)/conf_framework.sh
|
||||
|
||||
|
||||
check() {
|
||||
cur_name=$(basename $2)
|
||||
config_file_path=$1
|
||||
if compile_module $cur_name "QUEUE_FLAG_DISCARD;" "linux/blk-mq.h"
|
||||
then
|
||||
echo $cur_name 1 >> $config_file_path
|
||||
else
|
||||
echo $cur_name 2 >> $config_file_path
|
||||
fi
|
||||
}
|
||||
|
||||
apply() {
|
||||
case "$1" in
|
||||
"1")
|
||||
add_function "
|
||||
static inline void cas_set_discard_flag(struct request_queue *q)
|
||||
{
|
||||
CAS_QUEUE_FLAG_SET(QUEUE_FLAG_DISCARD, q);
|
||||
}"
|
||||
;;
|
||||
|
||||
"2")
|
||||
|
||||
add_function "
|
||||
static inline void cas_set_discard_flag(struct request_queue *q)
|
||||
{
|
||||
(void)q;
|
||||
}"
|
||||
;;
|
||||
|
||||
*)
|
||||
exit 1
|
||||
esac
|
||||
}
|
||||
|
||||
conf_run $@
|
||||
Reference in New Issue
Block a user