[dm-devel] [dm-5.19 PATCH 08/21] dm: move hot dm_io members to same cacheline as dm_target_io
Mike Snitzer
snitzer at kernel.org
Mon Apr 18 02:27:20 UTC 2022
Just saves some cacheline bouncing for members accessed during cloned
bio submission and completion.
Signed-off-by: Mike Snitzer <snitzer at kernel.org>
---
drivers/md/dm-core.h | 12 +++++++-----
1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/drivers/md/dm-core.h b/drivers/md/dm-core.h
index db069fa9cee5..41d6511dc7cf 100644
--- a/drivers/md/dm-core.h
+++ b/drivers/md/dm-core.h
@@ -250,17 +250,19 @@ static inline bool dm_tio_is_normal(struct dm_target_io *tio)
#define DM_IO_MAGIC 19577
struct dm_io {
unsigned short magic;
- blk_short_t flags;
- atomic_t io_count;
- struct mapped_device *md;
- struct bio *orig_bio;
- blk_status_t status;
+
spinlock_t lock;
unsigned long start_time;
void *data;
struct hlist_node node;
struct task_struct *map_task;
struct dm_stats_aux stats_aux;
+
+ blk_short_t flags;
+ blk_status_t status;
+ atomic_t io_count;
+ struct mapped_device *md;
+ struct bio *orig_bio;
/* last member of dm_target_io is 'struct bio' */
struct dm_target_io tio;
};
--
2.15.0
More information about the dm-devel
mailing list