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

Christoph Hellwig
2025-11-28T05:55:17Z

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)