Version in base suite: 9.0.0-1 Base version: rapiddisk_9.0.0-1 Target version: rapiddisk_9.0.0-1+deb12u1 Base file: /srv/ftp-master.debian.org/ftp/pool/main/r/rapiddisk/rapiddisk_9.0.0-1.dsc Target file: /srv/ftp-master.debian.org/policy/pool/main/r/rapiddisk/rapiddisk_9.0.0-1+deb12u1.dsc changelog | 12 ++ control | 2 copyright | 1 dkms | 4 gbp.conf | 2 patches/0001-Fixed-typo.patch | 25 ++++ patches/0001-Support-linux-5.19.patch | 53 --------- patches/0002-Adding-Linux-kernel-6.0-support-133.patch | 26 ---- patches/0002-Removing-deprecated-REMAKE_INITRD-option-in-dkms.con.patch | 47 ++++++++ patches/0005-Adding-support-for-newer-RHEL-9.2-and-CentOS-Stream-.patch | 56 ++++++++++ patches/0006-Differentiate-define-checks-between-RHEL-9.1-and-9.2.patch | 26 ++++ patches/0009-Updating-rapiddisk-cache-to-build-in-6.8.2-kernels.patch | 50 ++++++++ patches/0010-the-v6.9-dm_io-changes-were-backported-to-more-stabl.patch | 37 ++++++ patches/0011-add-4.3-guard-around-bio-bi_status-bio-bi_error-usag.patch | 32 +++++ patches/0012-dkms.conf-declare-BUILD_EXCLUSIVE_KERNEL_MIN-2.6.39.patch | 25 ++++ patches/0013-remove-duplicate-rdsk-rdsk_disk-allocation.patch | 30 +++++ patches/0014-add-support-for-Linux-6.9.patch | 41 +++++++ patches/0015-add-support-for-Linux-6.10.patch | 44 +++++++ patches/series | 13 +- salsa-ci.yml | 3 20 files changed, 447 insertions(+), 82 deletions(-) diff -Nru rapiddisk-9.0.0/debian/changelog rapiddisk-9.0.0/debian/changelog --- rapiddisk-9.0.0/debian/changelog 2023-02-03 06:45:15.000000000 +0000 +++ rapiddisk-9.0.0/debian/changelog 2025-02-05 15:18:20.000000000 +0000 @@ -1,3 +1,15 @@ +rapiddisk (9.0.0-1+deb12u1) bookworm; urgency=medium + + * QA upload. + * Set Maintainer to Debian QA Group. (See: #1091209) + * Drop unused obsolete patches. + * Cherry-pick upstream commits for supporting up to Linux 6.10. + (Closes: #1069945, #1070418) + * dkms.conf: Set BUILD_EXCLUSIVE_KERNEL_MIN="2.6.39" for using kstrto*(). + * Upload to bookworm. + + -- Andreas Beckmann Wed, 05 Feb 2025 16:18:20 +0100 + rapiddisk (9.0.0-1) unstable; urgency=medium * New upstream version. diff -Nru rapiddisk-9.0.0/debian/control rapiddisk-9.0.0/debian/control --- rapiddisk-9.0.0/debian/control 2023-02-03 06:45:15.000000000 +0000 +++ rapiddisk-9.0.0/debian/control 2025-02-05 15:18:20.000000000 +0000 @@ -1,7 +1,7 @@ Source: rapiddisk Section: kernel Priority: optional -Maintainer: Gürkan Myczko +Maintainer: Debian QA Group Rules-Requires-Root: no Build-Depends: debhelper-compat (= 13), diff -Nru rapiddisk-9.0.0/debian/copyright rapiddisk-9.0.0/debian/copyright --- rapiddisk-9.0.0/debian/copyright 2023-02-03 06:45:15.000000000 +0000 +++ rapiddisk-9.0.0/debian/copyright 2025-02-05 15:18:20.000000000 +0000 @@ -52,6 +52,7 @@ debian/* Copyright: 2022-2023 Gürkan Myczko + © 2023-2025 Andreas Beckmann License: GPL-2.0-or-later License: GPL-2.0-or-later diff -Nru rapiddisk-9.0.0/debian/dkms rapiddisk-9.0.0/debian/dkms --- rapiddisk-9.0.0/debian/dkms 2023-01-31 13:28:59.000000000 +0000 +++ rapiddisk-9.0.0/debian/dkms 2025-02-05 15:18:20.000000000 +0000 @@ -7,3 +7,7 @@ BUILT_MODULE_NAME[1]="rapiddisk-cache" DEST_MODULE_LOCATION[0]=/extra DEST_MODULE_LOCATION[1]=/extra + +# kstrto*() were introduced in v2.6.39-rc1 by "kstrto*: converting strings to +# integers done (hopefully) right" (33ee3b2e2eb9b4b6c64dcf9ed66e2ac3124e748c) +BUILD_EXCLUSIVE_KERNEL_MIN="2.6.39" diff -Nru rapiddisk-9.0.0/debian/gbp.conf rapiddisk-9.0.0/debian/gbp.conf --- rapiddisk-9.0.0/debian/gbp.conf 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/gbp.conf 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,2 @@ +[DEFAULT] +debian-branch = bookworm diff -Nru rapiddisk-9.0.0/debian/patches/0001-Fixed-typo.patch rapiddisk-9.0.0/debian/patches/0001-Fixed-typo.patch --- rapiddisk-9.0.0/debian/patches/0001-Fixed-typo.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0001-Fixed-typo.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,25 @@ +From 9cd4824d7bdbdf6516845d2ea0413b924247118c Mon Sep 17 00:00:00 2001 +From: Petros Koutoupis +Date: Tue, 25 Apr 2023 02:22:16 -0500 +Subject: [PATCH] Fixed typo. + +--- + README.md | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/README.md b/README.md +index ad6f9e5..c59faa6 100644 +--- a/README.md ++++ b/README.md +@@ -8,7 +8,7 @@ RapidDisk contains a set of advanced Linux RAM Drive and Caching kernel + modules. The user space utilities allow you to dynamically allocate RAM + as block devices to either use them as stand alone drives or even map + them as caching nodes to slower local (or remote) disk drives. The same +-utilies provide users with the capability to export the same volumes ++utilities provide users with the capability to export the same volumes + across an NVMe Target network. + + ![Diagram](diagram.png) +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0001-Support-linux-5.19.patch rapiddisk-9.0.0/debian/patches/0001-Support-linux-5.19.patch --- rapiddisk-9.0.0/debian/patches/0001-Support-linux-5.19.patch 2023-01-31 13:28:59.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0001-Support-linux-5.19.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,53 +0,0 @@ -From: Andrea Righi -Subject: [PATCH] Support linux 5.19. -Source: upstream, https://github.com/pkoutoupis/rapiddisk/pull/116/commits/48e901f08fc1199d917d15e4c68b8a6fec822e1a - -Signed-off-by: Andrea Righi ---- - module/rapiddisk.c | 18 +++++++++++++++++- - 1 file changed, 17 insertions(+), 1 deletion(-) - -Index: rapiddisk-8.2.0/module/rapiddisk.c -=================================================================== ---- rapiddisk-8.2.0.orig/module/rapiddisk.c -+++ rapiddisk-8.2.0/module/rapiddisk.c -@@ -633,6 +633,18 @@ io_error: - #endif - } - -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,19,0) -+static inline int bdev_openers(struct block_device *bdev) -+{ -+ return atomic_read(&bdev->bd_openers); -+} -+#else -+static inline int bdev_openers(struct block_device *bdev) -+{ -+ return bdev->bd_openers; -+} -+#endif -+ - static int rdsk_ioctl(struct block_device *bdev, fmode_t mode, - unsigned int cmd, unsigned long arg) - { -@@ -660,7 +672,7 @@ static int rdsk_ioctl(struct block_devic - mutex_lock(&bdev->bd_mutex); - #endif - error = -EBUSY; -- if (bdev->bd_openers <= 1) { -+ if (bdev_openers(bdev) <= 1) { - #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,3,0) - #if LINUX_VERSION_CODE >= KERNEL_VERSION(5,8,0) || (defined(RHEL_MAJOR) && RHEL_MAJOR == 8 && RHEL_MINOR >= 4) - invalidate_bdev(bdev); -@@ -805,7 +817,11 @@ static int attach_device(int size) - disk->queue->nr_requests = nr_requests; - disk->queue->limits.discard_granularity = PAGE_SIZE; - disk->queue->limits.max_discard_sectors = UINT_MAX; -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,19,0) -+ blk_queue_max_discard_sectors(disk->queue, 0); -+#else - blk_queue_flag_set(QUEUE_FLAG_DISCARD, disk->queue); -+#endif - blk_queue_flag_set(QUEUE_FLAG_NONROT, disk->queue); - #else - rdsk->rdsk_queue->limits.max_sectors = (max_sectors * 2); diff -Nru rapiddisk-9.0.0/debian/patches/0002-Adding-Linux-kernel-6.0-support-133.patch rapiddisk-9.0.0/debian/patches/0002-Adding-Linux-kernel-6.0-support-133.patch --- rapiddisk-9.0.0/debian/patches/0002-Adding-Linux-kernel-6.0-support-133.patch 2023-01-31 13:28:59.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0002-Adding-Linux-kernel-6.0-support-133.patch 1970-01-01 00:00:00.000000000 +0000 @@ -1,26 +0,0 @@ -From: Petros Koutoupis -Date: Wed, 5 Oct 2022 12:47:15 +0000 -Subject: [PATCH] Adding Linux kernel 6.0 support (#133) - -Origin: upstream ---- - module/rapiddisk-cache.c | 4 ++++ - 1 file changed, 4 insertions(+) - -Index: rapiddisk/module/rapiddisk-cache.c -=================================================================== ---- rapiddisk.orig/module/rapiddisk-cache.c -+++ rapiddisk/module/rapiddisk-cache.c -@@ -175,8 +175,12 @@ int dm_io_async_bvec(unsigned int num_re - struct dm_io_request iorq; - - #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0) -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,0,0) -+ (rw == WRITE) ? (iorq.bi_opf = REQ_OP_WRITE) : (iorq.bi_opf = REQ_OP_READ); -+#else - iorq.bi_op = rw; - iorq.bi_op_flags = 0; -+#endif - #else - iorq.bi_rw = rw; - #endif diff -Nru rapiddisk-9.0.0/debian/patches/0002-Removing-deprecated-REMAKE_INITRD-option-in-dkms.con.patch rapiddisk-9.0.0/debian/patches/0002-Removing-deprecated-REMAKE_INITRD-option-in-dkms.con.patch --- rapiddisk-9.0.0/debian/patches/0002-Removing-deprecated-REMAKE_INITRD-option-in-dkms.con.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0002-Removing-deprecated-REMAKE_INITRD-option-in-dkms.con.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,47 @@ +From c1dce90ddb60e38ea26b7028eb1058e50f199318 Mon Sep 17 00:00:00 2001 +From: Petros Koutoupis +Date: Wed, 26 Apr 2023 19:03:44 -0500 +Subject: [PATCH] Removing deprecated REMAKE_INITRD option in dkms.conf. + +--- + README.md | 8 ++++++++ + module/dkms.conf | 1 - + 2 files changed, 8 insertions(+), 1 deletion(-) + +diff --git a/README.md b/README.md +index c59faa6..87dea6b 100644 +--- a/README.md ++++ b/README.md +@@ -174,12 +174,20 @@ Uninstalling: + ```console + # make dkms-install + ``` ++**_Note_** - In dkms package versions 3.x and later, the REMAKE_INITRD option has ++been deprecated. As a result, the operating system's initrd is not remade on every ++dkms rebuild of the module. If this is desired, then it will need to be manually ++rebuilt per your operating system's procedures. Otherwise, you can install and enable ++the rapiddisk-on-boot functions which is supported on both Ubuntu and RHEL based ++Linux distributions. + + ## Uninstalling modules for DKMS support + + ```console + # make dkms-uninstall + ``` ++**_Note_** - Please refer to the above note on initrd remakes during dkms rebuilds ++of the rapiddisk modules. + + ## Managing the RapidDisk daemon service + +diff --git a/module/dkms.conf b/module/dkms.conf +index a743446..9c391fa 100644 +--- a/module/dkms.conf ++++ b/module/dkms.conf +@@ -5,4 +5,3 @@ BUILT_MODULE_NAME[1]="rapiddisk-cache" + DEST_MODULE_LOCATION[0]="/kernel/rapiddisk/" + DEST_MODULE_LOCATION[1]="/kernel/rapiddisk/" + AUTOINSTALL="yes" +-REMAKE_INITRD="yes" +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0005-Adding-support-for-newer-RHEL-9.2-and-CentOS-Stream-.patch rapiddisk-9.0.0/debian/patches/0005-Adding-support-for-newer-RHEL-9.2-and-CentOS-Stream-.patch --- rapiddisk-9.0.0/debian/patches/0005-Adding-support-for-newer-RHEL-9.2-and-CentOS-Stream-.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0005-Adding-support-for-newer-RHEL-9.2-and-CentOS-Stream-.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,56 @@ +From 6fb53bb1ec94a8adf20332be767a61a6924fd832 Mon Sep 17 00:00:00 2001 +From: Petros Koutoupis +Date: Fri, 2 Jun 2023 07:24:22 -0500 +Subject: [PATCH] Adding support for newer RHEL 9.2 and CentOS Stream 9 + kernels. + +--- + module/rapiddisk-cache.c | 5 +++++ + module/rapiddisk.c | 4 ++-- + 2 files changed, 7 insertions(+), 2 deletions(-) + +diff --git a/module/rapiddisk-cache.c b/module/rapiddisk-cache.c +index 9f6a234..54d6392 100644 +--- a/module/rapiddisk-cache.c ++++ b/module/rapiddisk-cache.c +@@ -177,10 +177,15 @@ int dm_io_async_bvec(unsigned int num_regions, struct dm_io_region *where, + #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,8,0) + #if LINUX_VERSION_CODE >= KERNEL_VERSION(6,0,0) + (rw == WRITE) ? (iorq.bi_opf = REQ_OP_WRITE) : (iorq.bi_opf = REQ_OP_READ); ++#else ++//#if (defined(RHEL_MAJOR) && RHEL_MAJOR >= 9 && RHEL_MINOR >= 2) ++#if (defined(RHEL_MAJOR) && RHEL_MAJOR >= 9) ++ iorq.bi_opf = rw; + #else + iorq.bi_op = rw; + iorq.bi_op_flags = 0; + #endif ++#endif + #else + iorq.bi_rw = rw; + #endif +diff --git a/module/rapiddisk.c b/module/rapiddisk.c +index eb20779..55ebc7d 100644 +--- a/module/rapiddisk.c ++++ b/module/rapiddisk.c +@@ -75,7 +75,7 @@ static DEFINE_MUTEX(ioctl_mutex); + + struct rdsk_device { + int num; +-#if LINUX_VERSION_CODE < KERNEL_VERSION(5,15,0) ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,14,0) + struct request_queue *rdsk_queue; + #endif + struct gendisk *rdsk_disk; +@@ -928,7 +928,7 @@ static int detach_device(unsigned long num) + list_del(&rdsk->rdsk_list); + del_gendisk(rdsk->rdsk_disk); + put_disk(rdsk->rdsk_disk); +-#if LINUX_VERSION_CODE < KERNEL_VERSION(5,15,0) ++#if LINUX_VERSION_CODE < KERNEL_VERSION(5,14,0) + blk_cleanup_queue(rdsk->rdsk_queue); + #endif + rdsk_free_pages(rdsk); +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0006-Differentiate-define-checks-between-RHEL-9.1-and-9.2.patch rapiddisk-9.0.0/debian/patches/0006-Differentiate-define-checks-between-RHEL-9.1-and-9.2.patch --- rapiddisk-9.0.0/debian/patches/0006-Differentiate-define-checks-between-RHEL-9.1-and-9.2.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0006-Differentiate-define-checks-between-RHEL-9.1-and-9.2.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,26 @@ +From b13035c40c3d46a5882d143ff44bd9040d9d6ea5 Mon Sep 17 00:00:00 2001 +From: Petros Koutoupis +Date: Sat, 3 Jun 2023 22:59:25 -0500 +Subject: [PATCH] Differentiate define checks between RHEL 9.1 and 9.2+ + +--- + module/rapiddisk-cache.c | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/module/rapiddisk-cache.c b/module/rapiddisk-cache.c +index 54d6392..397c6fa 100644 +--- a/module/rapiddisk-cache.c ++++ b/module/rapiddisk-cache.c +@@ -178,8 +178,7 @@ int dm_io_async_bvec(unsigned int num_regions, struct dm_io_region *where, + #if LINUX_VERSION_CODE >= KERNEL_VERSION(6,0,0) + (rw == WRITE) ? (iorq.bi_opf = REQ_OP_WRITE) : (iorq.bi_opf = REQ_OP_READ); + #else +-//#if (defined(RHEL_MAJOR) && RHEL_MAJOR >= 9 && RHEL_MINOR >= 2) +-#if (defined(RHEL_MAJOR) && RHEL_MAJOR >= 9) ++#if (defined(RHEL_MAJOR) && RHEL_MAJOR >= 9 && RHEL_MINOR >= 2) + iorq.bi_opf = rw; + #else + iorq.bi_op = rw; +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0009-Updating-rapiddisk-cache-to-build-in-6.8.2-kernels.patch rapiddisk-9.0.0/debian/patches/0009-Updating-rapiddisk-cache-to-build-in-6.8.2-kernels.patch --- rapiddisk-9.0.0/debian/patches/0009-Updating-rapiddisk-cache-to-build-in-6.8.2-kernels.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0009-Updating-rapiddisk-cache-to-build-in-6.8.2-kernels.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,50 @@ +From 3d7944363e83389d56a82de931e4801d82d99b5f Mon Sep 17 00:00:00 2001 +From: Petros Koutoupis +Date: Mon, 8 Apr 2024 07:34:59 -0500 +Subject: [PATCH] Updating rapiddisk-cache to build in 6.8.2 kernels. + +--- + module/rapiddisk-cache.c | 19 +++++++++++++++++++ + 1 file changed, 19 insertions(+) + +diff --git a/module/rapiddisk-cache.c b/module/rapiddisk-cache.c +index 397c6fa..3a3ce87 100644 +--- a/module/rapiddisk-cache.c ++++ b/module/rapiddisk-cache.c +@@ -162,6 +162,21 @@ static void cache_write(struct cache_context *, struct bio *); + static int cache_invalidate_blocks(struct cache_context *, struct bio *); + static void rc_uncached_io_callback(unsigned long, void *); + static void rc_start_uncached_io(struct cache_context *, struct bio *); ++void rc_io_callback(unsigned long, void *); ++int rc_do_complete(struct kcached_job *); ++void kcached_client_destroy(struct cache_context *); ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0) ++int rc_map(struct dm_target *, struct bio *); ++#else ++int rc_map(struct dm_target *, struct bio *, union map_info *); ++#endif ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,14,0) ++int dm_io_async_bvec(unsigned int, struct dm_io_region *, int, struct bio *, io_notify_fn, void *); ++#else ++int dm_io_async_bvec(unsigned int, struct dm_io_region *, int, struct bio_vec *, io_notify_fn, void *); ++#endif ++int __init rc_init(void); ++void rc_exit(void); + + int dm_io_async_bvec(unsigned int num_regions, struct dm_io_region *where, + #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,14,0) +@@ -199,7 +214,11 @@ int dm_io_async_bvec(unsigned int num_regions, struct dm_io_region *where, + iorq.notify.context = context; + iorq.client = dmc->io_client; + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,8,2) ++ return dm_io(&iorq, num_regions, where, NULL, IOPRIO_DEFAULT); ++#else + return dm_io(&iorq, num_regions, where, NULL); ++#endif + } + + static int jobs_init(void) +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0010-the-v6.9-dm_io-changes-were-backported-to-more-stabl.patch rapiddisk-9.0.0/debian/patches/0010-the-v6.9-dm_io-changes-were-backported-to-more-stabl.patch --- rapiddisk-9.0.0/debian/patches/0010-the-v6.9-dm_io-changes-were-backported-to-more-stabl.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0010-the-v6.9-dm_io-changes-were-backported-to-more-stabl.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,37 @@ +From 9f7587f06ba6b05761b093db1781c2b280c3680e Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Sun, 4 Aug 2024 14:55:44 +0200 +Subject: [PATCH] the v6.9 dm_io() changes were backported to more stable Linux + versions + +the IO priority parameter has been added by +"dm io: Support IO priority" in Linux + v6.9-rc1 (6e5f0f6383b4896c7e9b943d84b136149d0f45e9) +and has been backported to Linux + v6.8.2 (3d02f57794b56f8a04a21fdfb04f20a1c9f712a7) + v6.7.11 (4156ddd66b15ca409cd52dc7040c28c25143ce5a) + v6.6.23 (5cfcea64883486d79c695afdc502e32eb1b71587) + v6.1.83 (92b3c2437df8fe55a5c7816d9521b1fb7d0718b0) +--- + module/rapiddisk-cache.c | 5 ++++- + 1 file changed, 4 insertions(+), 1 deletion(-) + +diff --git a/module/rapiddisk-cache.c b/module/rapiddisk-cache.c +index 3a3ce87..59cb6df 100644 +--- a/module/rapiddisk-cache.c ++++ b/module/rapiddisk-cache.c +@@ -214,7 +214,10 @@ int dm_io_async_bvec(unsigned int num_regions, struct dm_io_region *where, + iorq.notify.context = context; + iorq.client = dmc->io_client; + +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,8,2) ++#if (LINUX_VERSION_CODE >= KERNEL_VERSION(6,8,2)) || \ ++ ((LINUX_VERSION_CODE >= KERNEL_VERSION(6,7,11)) && (LINUX_VERSION_CODE < KERNEL_VERSION(6,8,0))) || \ ++ ((LINUX_VERSION_CODE >= KERNEL_VERSION(6,6,23)) && (LINUX_VERSION_CODE < KERNEL_VERSION(6,7,0))) || \ ++ ((LINUX_VERSION_CODE >= KERNEL_VERSION(6,1,83)) && (LINUX_VERSION_CODE < KERNEL_VERSION(6,2,0))) + return dm_io(&iorq, num_regions, where, NULL, IOPRIO_DEFAULT); + #else + return dm_io(&iorq, num_regions, where, NULL); +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0011-add-4.3-guard-around-bio-bi_status-bio-bi_error-usag.patch rapiddisk-9.0.0/debian/patches/0011-add-4.3-guard-around-bio-bi_status-bio-bi_error-usag.patch --- rapiddisk-9.0.0/debian/patches/0011-add-4.3-guard-around-bio-bi_status-bio-bi_error-usag.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0011-add-4.3-guard-around-bio-bi_status-bio-bi_error-usag.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,32 @@ +From 0bfd8e7d6326d655bdaa1fcfb70d7e81002bdc11 Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Sun, 4 Aug 2024 15:00:40 +0200 +Subject: [PATCH] add >= 4.3 guard around bio->bi_status/bio->bi_error usage + +Restores support for older Linux kernels. All other uses of +bio->bi_status/bio->bi_error in rapiddisk-cache.c were already guarded. +--- + module/rapiddisk.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/module/rapiddisk.c b/module/rapiddisk.c +index 55ebc7d..86a5205 100644 +--- a/module/rapiddisk.c ++++ b/module/rapiddisk.c +@@ -648,11 +648,13 @@ out: + return; + #endif + #endif ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(4,3,0) + io_error: + #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,13,0) + bio->bi_status= err; + #else + bio->bi_error = err; ++#endif + #endif + bio_io_error(bio); + #if LINUX_VERSION_CODE >= KERNEL_VERSION(4,4,0) +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0012-dkms.conf-declare-BUILD_EXCLUSIVE_KERNEL_MIN-2.6.39.patch rapiddisk-9.0.0/debian/patches/0012-dkms.conf-declare-BUILD_EXCLUSIVE_KERNEL_MIN-2.6.39.patch --- rapiddisk-9.0.0/debian/patches/0012-dkms.conf-declare-BUILD_EXCLUSIVE_KERNEL_MIN-2.6.39.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0012-dkms.conf-declare-BUILD_EXCLUSIVE_KERNEL_MIN-2.6.39.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,25 @@ +From d0f4f30a10ece160b0958a149e26504388ad7213 Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Sun, 4 Aug 2024 15:07:34 +0200 +Subject: [PATCH] dkms.conf: declare BUILD_EXCLUSIVE_KERNEL_MIN="2.6.39" + +the kstrto*() functions were introduced in v2.6.39-rc1 +--- + module/dkms.conf | 4 ++++ + 1 file changed, 4 insertions(+) + +diff --git a/module/dkms.conf b/module/dkms.conf +index 9c391fa..ddd7911 100644 +--- a/module/dkms.conf ++++ b/module/dkms.conf +@@ -5,3 +5,7 @@ BUILT_MODULE_NAME[1]="rapiddisk-cache" + DEST_MODULE_LOCATION[0]="/kernel/rapiddisk/" + DEST_MODULE_LOCATION[1]="/kernel/rapiddisk/" + AUTOINSTALL="yes" ++ ++# kstrto*() were introduced in v2.6.39-rc1 by "kstrto*: converting strings to ++# integers done (hopefully) right" (33ee3b2e2eb9b4b6c64dcf9ed66e2ac3124e748c) ++BUILD_EXCLUSIVE_KERNEL_MIN="2.6.39" +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0013-remove-duplicate-rdsk-rdsk_disk-allocation.patch rapiddisk-9.0.0/debian/patches/0013-remove-duplicate-rdsk-rdsk_disk-allocation.patch --- rapiddisk-9.0.0/debian/patches/0013-remove-duplicate-rdsk-rdsk_disk-allocation.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0013-remove-duplicate-rdsk-rdsk_disk-allocation.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,30 @@ +From 44cff08b282307709863cb440da5a271fd93a88a Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Wed, 14 Aug 2024 09:42:29 +0200 +Subject: [PATCH] remove duplicate rdsk->rdsk_disk allocation + +--- + module/rapiddisk.c | 7 ------- + 1 file changed, 7 deletions(-) + +diff --git a/module/rapiddisk.c b/module/rapiddisk.c +index 86a5205..6560aeb 100644 +--- a/module/rapiddisk.c ++++ b/module/rapiddisk.c +@@ -807,13 +807,6 @@ static int attach_device(unsigned long num, unsigned long long size) + blk_queue_make_request(rdsk->rdsk_queue, rdsk_make_request); + #endif + #endif +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,14,0) +- disk = rdsk->rdsk_disk = blk_alloc_disk(NUMA_NO_NODE); +-#else +- disk = rdsk->rdsk_disk = alloc_disk(1); +-#endif +- if (!disk) +- goto out_free_queue; + #if LINUX_VERSION_CODE >= KERNEL_VERSION(5,14,0) + disk = rdsk->rdsk_disk = blk_alloc_disk(NUMA_NO_NODE); + #else +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0014-add-support-for-Linux-6.9.patch rapiddisk-9.0.0/debian/patches/0014-add-support-for-Linux-6.9.patch --- rapiddisk-9.0.0/debian/patches/0014-add-support-for-Linux-6.9.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0014-add-support-for-Linux-6.9.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,41 @@ +From 988f0bfc38c096d594fb66925f387fa92032b6a2 Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Wed, 14 Aug 2024 09:55:35 +0200 +Subject: [PATCH] add support for Linux 6.9 + +adjust for Linux v6.9-rc1 commit +"block: pass a queue_limits argument to blk_alloc_disk" +(74fa8f9c553f7b5ccab7d103acae63cc2e080465) + +Fixes: #185 +--- + module/rapiddisk.c | 8 +++++++- + 1 file changed, 7 insertions(+), 1 deletion(-) + +diff --git a/module/rapiddisk.c b/module/rapiddisk.c +index 6560aeb..1a0479f 100644 +--- a/module/rapiddisk.c ++++ b/module/rapiddisk.c +@@ -807,12 +807,18 @@ static int attach_device(unsigned long num, unsigned long long size) + blk_queue_make_request(rdsk->rdsk_queue, rdsk_make_request); + #endif + #endif +-#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,14,0) ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,9,0) ++ disk = rdsk->rdsk_disk = blk_alloc_disk(NULL, NUMA_NO_NODE); ++#elif LINUX_VERSION_CODE >= KERNEL_VERSION(5,14,0) + disk = rdsk->rdsk_disk = blk_alloc_disk(NUMA_NO_NODE); + #else + disk = rdsk->rdsk_disk = alloc_disk(1); + #endif ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(6,9,0) ++ if (IS_ERR(disk)) ++#else + if (!disk) ++#endif + goto out_free_queue; + #if LINUX_VERSION_CODE >= KERNEL_VERSION(5,14,0) + blk_queue_logical_block_size(disk->queue, BYTES_PER_SECTOR); +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/0015-add-support-for-Linux-6.10.patch rapiddisk-9.0.0/debian/patches/0015-add-support-for-Linux-6.10.patch --- rapiddisk-9.0.0/debian/patches/0015-add-support-for-Linux-6.10.patch 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/0015-add-support-for-Linux-6.10.patch 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,44 @@ +From b5c2c7908453af1d0b7c642a69d6e8205ac79020 Mon Sep 17 00:00:00 2001 +From: Andreas Beckmann +Date: Thu, 17 Oct 2024 11:31:38 +0200 +Subject: [PATCH] add support for Linux 6.10 + +adjust for Linux v6.10-rc1 commit +"RIP ->bd_inode" (203c1ce0bb063d1620698e39637b64f2d09c1368) + +Fixes: #187 +--- + module/rapiddisk-cache.c | 8 ++++++++ + 1 file changed, 8 insertions(+) + +diff --git a/module/rapiddisk-cache.c b/module/rapiddisk-cache.c +index 59cb6df..99cbef0 100644 +--- a/module/rapiddisk-cache.c ++++ b/module/rapiddisk-cache.c +@@ -1045,7 +1045,11 @@ static int cache_ctr(struct dm_target *ti, unsigned int argc, char **argv) + goto construct_fail5; + } + } else { ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,11,0) ++ dmc->size = bdev_nr_sectors(dmc->cache_dev->bdev); ++#else + dmc->size = to_sector(dmc->cache_dev->bdev->bd_inode->i_size); ++#endif + } + + if (argc >= 4) { +@@ -1081,7 +1085,11 @@ static int cache_ctr(struct dm_target *ti, unsigned int argc, char **argv) + do_div(tmpsize, dmc->assoc); + dmc->size = tmpsize * dmc->assoc; + ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(5,11,0) ++ dev_size = bdev_nr_sectors(dmc->cache_dev->bdev); ++#else + dev_size = to_sector(dmc->cache_dev->bdev->bd_inode->i_size); ++#endif + data_size = dmc->size * dmc->block_size; + if (data_size > dev_size) { + DMERR("Requested cache size exceeds the cache device's capacity (%lu>%lu)", +-- +2.39.5 + diff -Nru rapiddisk-9.0.0/debian/patches/series rapiddisk-9.0.0/debian/patches/series --- rapiddisk-9.0.0/debian/patches/series 2023-02-03 06:45:15.000000000 +0000 +++ rapiddisk-9.0.0/debian/patches/series 2025-02-05 15:18:20.000000000 +0000 @@ -1,2 +1,11 @@ -#0001-Support-linux-5.19.patch -#0002-Adding-Linux-kernel-6.0-support-133.patch +0001-Fixed-typo.patch +0002-Removing-deprecated-REMAKE_INITRD-option-in-dkms.con.patch +0005-Adding-support-for-newer-RHEL-9.2-and-CentOS-Stream-.patch +0006-Differentiate-define-checks-between-RHEL-9.1-and-9.2.patch +0009-Updating-rapiddisk-cache-to-build-in-6.8.2-kernels.patch +0010-the-v6.9-dm_io-changes-were-backported-to-more-stabl.patch +0011-add-4.3-guard-around-bio-bi_status-bio-bi_error-usag.patch +0012-dkms.conf-declare-BUILD_EXCLUSIVE_KERNEL_MIN-2.6.39.patch +0013-remove-duplicate-rdsk-rdsk_disk-allocation.patch +0014-add-support-for-Linux-6.9.patch +0015-add-support-for-Linux-6.10.patch diff -Nru rapiddisk-9.0.0/debian/salsa-ci.yml rapiddisk-9.0.0/debian/salsa-ci.yml --- rapiddisk-9.0.0/debian/salsa-ci.yml 1970-01-01 00:00:00.000000000 +0000 +++ rapiddisk-9.0.0/debian/salsa-ci.yml 2025-02-05 15:18:20.000000000 +0000 @@ -0,0 +1,3 @@ +--- +include: + - https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/recipes/debian.yml