Re: [PATCH 1/9] block: fix data loss and stale date exposure problems during append write

Stephen Zhang
2025-11-28T06:27:27Z

Christoph Hellwig <hch@infradead.org> 于2025年11月28日周五 13:55写道：
>
> On Fri, Nov 28, 2025 at 11:22:49AM +0800, Stephen Zhang wrote:
> > Therefore, we could potentially change it to::
> >
> > if (bio->bi_status && !READ_ONCE(parent->bi_status))
> > parent->bi_status = bio->bi_status;
> >
> > But as you mentioned, the check might not be critical here. So ultimately,
> > we can simplify it to:
> >
> > if (bio->bi_status)
> > parent->bi_status = bio->bi_status;
>
> It might make sense to just use cmpxchg. See btrfs_bio_end_io as an
> example (although it is operating on the btrfs_bio structure)
>

Thanks for the suggestion! I learned something new today.

Thanks,
Shida