Blob Blame History Raw
From: Jens Axboe <axboe@kernel.dk>
Date: Fri, 15 Oct 2021 16:55:05 -0600
Subject: [PATCH] block: align blkdev_dio inlined bio to a cacheline
Git-commit: 6155631a0c3b7ca795a0edb44894e58dc3e3d798
Patch-mainline: v5.16-rc1
References: jsc#PED-1183

We get all sorts of unreliable and funky results since the bio is
designed to align on a cacheline, which it does not when inlined like
this.

Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Acked-by: Hannes Reinecke <hare@suse.com>
---
 block/fops.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/block/fops.c b/block/fops.c
index 2c43e493e37c..21d25ee0e4bf 100644
--- a/block/fops.c
+++ b/block/fops.c
@@ -137,7 +137,7 @@ struct blkdev_dio {
 	size_t			size;
 	atomic_t		ref;
 	unsigned int		flags;
-	struct bio		bio;
+	struct bio		bio ____cacheline_aligned_in_smp;
 };
 
 static struct bio_set blkdev_dio_pool;
-- 
2.35.3