Rework for RHEL8.5
Rework for RHEL8.5 compatibility to avoid potential bug of exiting queue after IO completion on a different CPU. Targeted RHEL kernel version corrected. Signed-off-by: Krzysztof Majzerowicz-Jaszcz <krzysztof.majzerowicz-jaszcz@intel.com>
This commit is contained in:
@@ -6,14 +6,14 @@
|
||||
|
||||
. $(dirname $3)/conf_framework
|
||||
|
||||
# RHEL8.5 kernel 4.18 subversion targeted for the workaround is 348.2.1.
|
||||
# RHEL8.5 kernel 4.18 subversion targeted for the workaround is 348.7.1.
|
||||
# The workaround is needed starting this version and up.
|
||||
LINUX_MAJOR_SINCE=4
|
||||
LINUX_MINOR_SINCE=18
|
||||
LINUX_SUB_SINCE=0
|
||||
RHEL_MAJOR_SINCE=348
|
||||
RHEL_MINOR_SINCE=2
|
||||
RHEL_SUB_SINCE=1
|
||||
QUEUE_PUT_WA_LINUX_MAJOR_SINCE=4
|
||||
QUEUE_PUT_WA_LINUX_MINOR_SINCE=18
|
||||
QUEUE_PUT_WA_LINUX_SUB_SINCE=0
|
||||
QUEUE_PUT_WA_RHEL_MAJOR_SINCE=348
|
||||
QUEUE_PUT_WA_RHEL_MINOR_SINCE=7
|
||||
QUEUE_PUT_WA_RHEL_SUB_SINCE=1
|
||||
|
||||
check () {
|
||||
cur_name=$(basename $2)
|
||||
@@ -35,12 +35,12 @@ check () {
|
||||
RHEL_SUB=${arr[2]}
|
||||
|
||||
#check kernel and rhel version (major/minor/sub)
|
||||
if [ "$LINUX_MAJOR" -eq "$LINUX_MAJOR_SINCE" ] &&
|
||||
[ "$LINUX_MINOR" -eq "$LINUX_MINOR_SINCE" ] &&
|
||||
[ "$LINUX_SUB" -eq "$LINUX_SUB_SINCE" ] &&
|
||||
[ "$RHEL_MAJOR" -ge "$RHEL_MAJOR_SINCE" ] &&
|
||||
[ "$RHEL_MINOR" -ge "$RHEL_MINOR_SINCE" ] &&
|
||||
[ "$RHEL_SUB" -ge "$RHEL_SUB_SINCE" ]
|
||||
if [ "$LINUX_MAJOR" -eq "$QUEUE_PUT_WA_LINUX_MAJOR_SINCE" ] &&
|
||||
[ "$LINUX_MINOR" -eq "$QUEUE_PUT_WA_LINUX_MINOR_SINCE" ] &&
|
||||
[ "$LINUX_SUB" -eq "$QUEUE_PUT_WA_LINUX_SUB_SINCE" ] &&
|
||||
[ "$RHEL_MAJOR" -ge "$QUEUE_PUT_WA_RHEL_MAJOR_SINCE" ] &&
|
||||
[ "$RHEL_MINOR" -ge "$QUEUE_PUT_WA_RHEL_MINOR_SINCE" ] &&
|
||||
[ "$RHEL_SUB" -ge "$QUEUE_PUT_WA_RHEL_SUB_SINCE" ]
|
||||
then
|
||||
echo $cur_name "1" >> $config_file_path; #workaround needed
|
||||
else
|
||||
@@ -53,12 +53,12 @@ check () {
|
||||
apply() {
|
||||
case "$1" in
|
||||
"1")
|
||||
add_define "cas_blk_queue_exit(bvol) \
|
||||
percpu_ref_put(&(casdisk_functions.casdsk_exp_obj_get_queue(bvol->dsk)->q_usage_counter) );
|
||||
add_define "cas_blk_queue_exit(q) \
|
||||
percpu_ref_put(&q->q_usage_counter);
|
||||
"
|
||||
;;
|
||||
"2")
|
||||
add_define "cas_blk_queue_exit(bvol) (void)bvol;"
|
||||
add_define "cas_blk_queue_exit(q) "
|
||||
;;
|
||||
*)
|
||||
exit 1
|
||||
Reference in New Issue
Block a user