From b5c2c7908453af1d0b7c642a69d6e8205ac79020 Mon Sep 17 00:00:00 2001
From: Andreas Beckmann <anbe@debian.org>
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

