#!/bin/bash # # Copyright(c) 2012-2022 Intel Corporation # Copyright(c) 2025 Huawei Technologies # 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_queue_max_discard_sectors(NULL, 0);" "linux/blkdev.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_queue_max_discard_sectors( struct request_queue *q, unsigned int max_discard_sectors) { blk_queue_max_discard_sectors(q, max_discard_sectors); }" ;; "2") add_function " static inline void cas_queue_max_discard_sectors( struct request_queue *q, unsigned int max_discard_sectors) { struct queue_limits *lim = &q->limits; lim->max_hw_discard_sectors = max_discard_sectors; lim->max_discard_sectors = min(max_discard_sectors, lim->max_user_discard_sectors); }" ;; *) exit 1 esac } conf_run $@