[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b14be10b-cf50-4190-a03b-ad302a241e74@oracle.com>
Date: Thu, 17 Jul 2025 09:00:00 +0100
From: John Garry <john.g.garry@...cle.com>
To: axboe@...nel.dk
Cc: dm-devel@...ts.linux.dev, linux-kernel@...r.kernel.org,
linux-raid@...r.kernel.org, linux-block@...r.kernel.org,
ojaswin@...ux.ibm.com, martin.petersen@...cle.com,
akpm@...ux-foundation.org, linux-xfs@...r.kernel.org,
djwong@...nel.org, dlemoal@...nel.org, cem@...nel.org,
nilay@...ux.ibm.com, agk@...hat.com, snitzer@...nel.org,
song@...nel.org, yukuai3@...wei.com, hch@....de, mpatocka@...hat.com
Subject: Re: [PATCH v7 0/6] block/md/dm: set chunk_sectors from stacked dev
stripe size
On 11/07/2025 11:52, John Garry wrote:
Hi Jens,
Can you please consider picking up these changes on the block tree? They
fix real issues which we encountered.
Thanks,
John
> This value in io_min is used to configure any atomic write limit for the
> stacked device. The idea is that the atomic write unit max is a
> power-of-2 factor of the stripe size, and the stripe size is available
> in io_min.
>
> Using io_min causes issues, as:
> a. it may be mutated
> b. the check for io_min being set for determining if we are dealing with
> a striped device is hard to get right, as reported in [0].
>
> This series now sets chunk_sectors limit to share stripe size.
>
> [0] https://lore.kernel.org/linux-block/888f3b1d-7817-4007-b3b3-1a2ea04df771@linux.ibm.com/T/#mecca17129f72811137d3c2f1e477634e77f06781
>
> Based on 8b428f42f3edf nbd: fix lockdep deadlock warning
>
> This series fixes issues for v6.16, but it's prob better to have this in
> v6.17 .
>
> Difference to v6:
> - do comparison in sectors in 2/6
>
> Differences to v5:
> - Neaten code in blk_validate_atomic_write_limits() (Jens)
>
> Differences to v4:
> - Use check_shl_overflow() (Nilay)
> - Use long long in for chunk bytes in 2/6
> - Add tags from Nilay (thanks!)
>
> John Garry (6):
> ilog2: add max_pow_of_two_factor()
> block: sanitize chunk_sectors for atomic write limits
> md/raid0: set chunk_sectors limit
> md/raid10: set chunk_sectors limit
> dm-stripe: limit chunk_sectors to the stripe size
> block: use chunk_sectors when evaluating stacked atomic write limits
>
> block/blk-settings.c | 62 ++++++++++++++++++++++++++----------------
> drivers/md/dm-stripe.c | 1 +
> drivers/md/raid0.c | 1 +
> drivers/md/raid10.c | 1 +
> fs/xfs/xfs_mount.c | 5 ----
> include/linux/log2.h | 14 ++++++++++
> 6 files changed, 56 insertions(+), 28 deletions(-)
>
Powered by blists - more mailing lists