summaryrefslogtreecommitdiffstats
path: root/src/kernel/xloop_main_5.15.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/xloop_main_5.15.c')
-rw-r--r--src/kernel/xloop_main_5.15.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/src/kernel/xloop_main_5.15.c b/src/kernel/xloop_main_5.15.c
index 9866c2b..7ed2a56 100644
--- a/src/kernel/xloop_main_5.15.c
+++ b/src/kernel/xloop_main_5.15.c
@@ -97,6 +97,10 @@
#define XLOOP_IDLE_WORKER_TIMEOUT (60 * HZ)
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 17, 0)
+#define GENHD_FL_NO_PART GENHD_FL_NO_PART_SCAN
+#endif
+
static DEFINE_IDR(xloop_index_idr);
static DEFINE_MUTEX(xloop_ctl_mutex);
static DEFINE_MUTEX(xloop_validate_mutex);
@@ -1011,7 +1015,7 @@ static int xloop_configure(struct xloop_device *xlo, fmode_t mode,
xlo->xlo_flags |= XLO_FLAGS_PARTSCAN;
partscan = xlo->xlo_flags & XLO_FLAGS_PARTSCAN;
if (partscan)
- xlo->xlo_disk->flags &= ~GENHD_FL_NO_PART_SCAN;
+ xlo->xlo_disk->flags &= ~GENHD_FL_NO_PART;
xloop_global_unlock(xlo, is_xloop);
if (partscan)
@@ -1158,7 +1162,7 @@ out_unlock:
mutex_lock(&xlo->xlo_mutex);
xlo->xlo_flags = 0;
if (!part_shift)
- xlo->xlo_disk->flags |= GENHD_FL_NO_PART_SCAN;
+ xlo->xlo_disk->flags |= GENHD_FL_NO_PART;
xlo->xlo_state = Xlo_unbound;
mutex_unlock(&xlo->xlo_mutex);
@@ -1286,7 +1290,7 @@ out_unfreeze:
if (!err && (xlo->xlo_flags & XLO_FLAGS_PARTSCAN) &&
!(prev_xlo_flags & XLO_FLAGS_PARTSCAN)) {
- xlo->xlo_disk->flags &= ~GENHD_FL_NO_PART_SCAN;
+ xlo->xlo_disk->flags &= ~GENHD_FL_NO_PART;
partscan = true;
}
out_unlock:
@@ -2110,8 +2114,10 @@ static int xloop_add(int i)
* userspace tools. Parameters like this in general should be avoided.
*/
if (!part_shift)
- disk->flags |= GENHD_FL_NO_PART_SCAN;
+ disk->flags |= GENHD_FL_NO_PART;
+#if LINUX_VERSION_CODE < KERNEL_VERSION(5, 17, 0)
disk->flags |= GENHD_FL_EXT_DEVT;
+#endif
atomic_set(&xlo->xlo_refcnt, 0);
mutex_init(&xlo->xlo_mutex);
xlo->xlo_number = i;