Hi,
在 2025/05/12 14:12, Christoph Hellwig 写道:
On Mon, May 12, 2025 at 02:05:56PM +0800, Yu Kuai wrote:
-mddev->bitmap_ops->startwrite(mddev, md_io_clone->offset,
- md_io_clone->sectors);
+ if (unlikely(md_io_clone->rw == STAT_DISCARD) &&
+
On Mon, May 12, 2025 at 02:05:56PM +0800, Yu Kuai wrote:
>>> - mddev->bitmap_ops->startwrite(mddev, md_io_clone->offset,
>>> - md_io_clone->sectors);
>>> + if (unlikely(md_io_clone->rw == STAT_DISCARD) &&
>>> + mddev->bitmap_ops->start_discard)
>>> +
Hi,
在 2025/05/12 12:41, Christoph Hellwig 写道:
On Mon, May 12, 2025 at 09:19:10AM +0800, Yu Kuai wrote:
+++ b/drivers/md/md.c
@@ -8849,14 +8849,24 @@ static void md_bitmap_start(struct mddev *mddev,
mddev->pers->bitmap_sector(mddev, &md_io_clone->offset,
On Mon, May 12, 2025 at 09:19:10AM +0800, Yu Kuai wrote:
> +++ b/drivers/md/md.c
> @@ -8849,14 +8849,24 @@ static void md_bitmap_start(struct mddev *mddev,
> mddev->pers->bitmap_sector(mddev, &md_io_clone->offset,
> &md_io_clone->sectors);
>
From: Yu Kuai
If {start, end}_discard is implemented from bitmap_operations, then they
will be used to handle discard IO. Currently md-bitmap handle discard
the same as normal write, prepare to support discard for new md bitmap.
Signed-off-by: Yu Kuai
---
drivers/md/md.c | 19 +++--