From 205649d84cdbfb64c4a86c497f0555221b67c160 Mon Sep 17 00:00:00 2001
From: Mike Snitzer <snitzer@redhat.com>
Date: Thu, 17 Feb 2022 23:40:04 -0500
Subject: [PATCH] dm: reorder members in mapped_device struct
Git-commit: 205649d84cdbfb64c4a86c497f0555221b67c160
Patch-mainline: v5.18-rc1
References: jsc#PED-2765
Improves alignment and groups related members relative to cachelines.
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Signed-off-by: Coly Li <colyli@suse.de>
---
drivers/md/dm-core.h | 38 +++++++++++++++++++-------------------
1 file changed, 19 insertions(+), 19 deletions(-)
diff --git a/drivers/md/dm-core.h b/drivers/md/dm-core.h
index 7ec2d75d9292..253b6bb5a0fc 100644
--- a/drivers/md/dm-core.h
+++ b/drivers/md/dm-core.h
@@ -64,13 +64,21 @@ struct mapped_device {
struct gendisk *disk;
struct dax_device *dax_dev;
+ wait_queue_head_t wait;
unsigned long __percpu *pending_io;
+ /* forced geometry settings */
+ struct hd_geometry geometry;
+
+ /*
+ * Processing queue (flush)
+ */
+ struct workqueue_struct *wq;
+
/*
* A list of ios that arrived while we were suspended.
*/
struct work_struct work;
- wait_queue_head_t wait;
spinlock_t deferred_lock;
struct bio_list deferred;
@@ -85,36 +93,28 @@ struct mapped_device {
struct list_head uevent_list;
spinlock_t uevent_lock; /* Protect access to uevent_list */
+ /* for blk-mq request-based DM support */
+ bool init_tio_pdu:1;
+ struct blk_mq_tag_set *tag_set;
+
+ struct dm_stats stats;
+
/* the number of internal suspends */
unsigned internal_suspend_count;
+ int swap_bios;
+ struct semaphore swap_bios_semaphore;
+ struct mutex swap_bios_lock;
+
/*
* io objects are allocated from here.
*/
struct bio_set io_bs;
struct bio_set bs;
- /*
- * Processing queue (flush)
- */
- struct workqueue_struct *wq;
-
- /* forced geometry settings */
- struct hd_geometry geometry;
-
/* kobject and completion */
struct dm_kobject_holder kobj_holder;
- int swap_bios;
- struct semaphore swap_bios_semaphore;
- struct mutex swap_bios_lock;
-
- struct dm_stats stats;
-
- /* for blk-mq request-based DM support */
- struct blk_mq_tag_set *tag_set;
- bool init_tio_pdu:1;
-
struct srcu_struct io_barrier;
#ifdef CONFIG_BLK_DEV_ZONED
--
2.35.3