scst: Unbreak the RHEL 9.8 and RHEL 10.2 builds

Fixes: https://github.com/SCST-project/scst/issues/369
Fixes: https://github.com/SCST-project/scst/issues/355
This commit is contained in:
Gleb Chesnokov
2026-05-26 13:37:20 +03:00
parent 5eb824aea8
commit 4ec53813b1
7 changed files with 96 additions and 31 deletions

View File

@@ -40,7 +40,9 @@ jobs:
'4.9.337',
'3.18.140',
'3.10.108',
'6.12.0-211.16.1.el10_2.0.1^Rocky^10.2',
'6.12.0-124.56.1.el10_1^Rocky^10.1',
'5.14.0-687.10.1.el9_8.0.1^Rocky^9.8',
'5.14.0-611.55.1.el9_7^Rocky^9.7',
'4.18.0-553.124.1.el8_10^Rocky^8.10',
'6.12.0-55.43.1.el10_0^AlmaLinux^10.0',

View File

@@ -75,7 +75,9 @@ ABT_KERNELS=" \
3.12.74-nc \
3.11.10-nc \
3.10.108-nc \
6.12.0-211.16.1.el10_2.0.1^Rocky^10.2-nc \
6.12.0-124.56.1.el10_1^Rocky^10.1-nc \
5.14.0-687.10.1.el9_8.0.1^Rocky^9.8-nc \
5.14.0-611.55.1.el9_7^Rocky^9.7-nc \
4.18.0-553.124.1.el8_10^Rocky^8.10-nc \
6.12.0-55.43.1.el10_0^AlmaLinux^10.0-nc \

View File

@@ -17,7 +17,9 @@ static int qla24xx_vport_disable(struct fc_vport *, bool);
static ssize_t
qla2x00_sysfs_read_fw_dump(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -62,7 +64,9 @@ qla2x00_sysfs_read_fw_dump(struct file *filp, struct kobject *kobj,
static ssize_t
qla2x00_sysfs_write_fw_dump(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -188,7 +192,9 @@ static const struct bin_attribute sysfs_fw_dump_attr = {
static ssize_t
qla2x00_sysfs_read_nvram(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -232,7 +238,9 @@ skip:
static ssize_t
qla2x00_sysfs_write_nvram(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -310,7 +318,9 @@ static const struct bin_attribute sysfs_nvram_attr = {
static ssize_t
qla2x00_sysfs_read_optrom(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -338,7 +348,9 @@ out:
static ssize_t
qla2x00_sysfs_write_optrom(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -380,7 +392,9 @@ static const struct bin_attribute sysfs_optrom_attr = {
static ssize_t
qla2x00_sysfs_write_optrom_ctl(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -568,7 +582,9 @@ static const struct bin_attribute sysfs_optrom_ctl_attr = {
static ssize_t
qla2x00_sysfs_read_vpd(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -619,7 +635,9 @@ skip:
static ssize_t
qla2x00_sysfs_write_vpd(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -690,7 +708,9 @@ static const struct bin_attribute sysfs_vpd_attr = {
static ssize_t
qla2x00_sysfs_read_sfp(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -730,7 +750,9 @@ static const struct bin_attribute sysfs_sfp_attr = {
static ssize_t
qla2x00_sysfs_write_reset(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -878,7 +900,9 @@ static const struct bin_attribute sysfs_reset_attr = {
static ssize_t
qla2x00_issue_logo(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -925,7 +949,9 @@ static const struct bin_attribute sysfs_issue_logo_attr = {
static ssize_t
qla2x00_sysfs_read_xgmac_stats(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -992,7 +1018,9 @@ static const struct bin_attribute sysfs_xgmac_stats_attr = {
static ssize_t
qla2x00_sysfs_read_dcbx_tlv(struct file *filp, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,

View File

@@ -442,7 +442,9 @@ static DEVICE_ATTR(port_database,
static ssize_t
qla2x00_sysfs_read_fw_dump(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -474,7 +476,9 @@ qla2x00_sysfs_read_fw_dump(struct file *file, struct kobject *kobj,
static ssize_t
qla2x00_sysfs_write_fw_dump(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -556,7 +560,9 @@ static const struct bin_attribute sysfs_fw_dump_attr = {
static ssize_t
qla2x00_sysfs_read_nvram(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -579,7 +585,9 @@ qla2x00_sysfs_read_nvram(struct file *file, struct kobject *kobj,
static ssize_t
qla2x00_sysfs_write_nvram(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -651,7 +659,9 @@ static const struct bin_attribute sysfs_nvram_attr = {
static ssize_t
qla2x00_sysfs_read_optrom(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -671,7 +681,9 @@ qla2x00_sysfs_read_optrom(struct file *file, struct kobject *kobj,
static ssize_t
qla2x00_sysfs_write_optrom(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -706,7 +718,9 @@ static const struct bin_attribute sysfs_optrom_attr = {
static ssize_t
qla2x00_sysfs_write_optrom_ctl(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -874,7 +888,9 @@ static const struct bin_attribute sysfs_optrom_ctl_attr = {
static ssize_t
qla2x00_sysfs_read_vpd(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -899,7 +915,9 @@ qla2x00_sysfs_read_vpd(struct file *file, struct kobject *kobj,
static ssize_t
qla2x00_sysfs_write_vpd(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -956,7 +974,9 @@ static const struct bin_attribute sysfs_vpd_attr = {
static ssize_t
qla2x00_sysfs_read_sfp(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -1021,7 +1041,9 @@ static const struct bin_attribute sysfs_sfp_attr = {
static ssize_t
qla2x00_sysfs_write_reset(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -1100,7 +1122,9 @@ static const struct bin_attribute sysfs_reset_attr = {
static ssize_t
qla2x00_sysfs_read_xgmac_stats(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,
@@ -1156,7 +1180,9 @@ static const struct bin_attribute sysfs_xgmac_stats_attr = {
static ssize_t
qla2x00_sysfs_read_dcbx_tlv(struct file *file, struct kobject *kobj,
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
struct bin_attribute *bin_attr,
#else
const struct bin_attribute *bin_attr,

View File

@@ -247,7 +247,9 @@ void blk_execute_rq_nowait_backport(struct request *rq, bool at_head)
#define blk_execute_rq_nowait blk_execute_rq_nowait_backport
#endif
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 17, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 17, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 2))
static inline unsigned int blk_mq_num_queues(const struct cpumask *mask,
unsigned int max_queues)
{
@@ -2046,7 +2048,10 @@ static inline int timer_delete(struct timer_list *timer)
* See also commit 41cb08555c41 ("treewide, timers: Rename from_timer() to
* timer_container_of()") # v6.16.
*/
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 16, 0) && \
(!defined(RHEL_MAJOR) || RHEL_MAJOR -0 < 9 || \
RHEL_MAJOR -0 == 9 && RHEL_MINOR -0 < 8 || \
RHEL_MAJOR -0 == 10 && RHEL_MINOR -0 < 2)
#define timer_container_of from_timer
#endif

View File

@@ -6556,7 +6556,7 @@ static int vdisk_create_bioset(struct scst_vdisk_dev *virt_dev)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 15, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(10, 1))
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(9, 8))
/*
* See also commit 105ca2a2c2ff ("block: split struct bio_integrity_payload") #v6.15.
*/

View File

@@ -1511,7 +1511,9 @@ static DRIVER_REMOVE_RET scst_local_driver_remove(struct device *dev)
return (DRIVER_REMOVE_RET)0;
}
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 11, 0)
#if LINUX_VERSION_CODE < KERNEL_VERSION(6, 11, 0) && \
(!defined(RHEL_RELEASE_CODE) || \
RHEL_RELEASE_CODE -0 < RHEL_RELEASE_VERSION(9, 8))
static int scst_local_bus_match(struct device *dev, struct device_driver *drv)
#else
static int scst_local_bus_match(struct device *dev, const struct device_driver *drv)