[dm-devel] [PATCH] block: add a bi_error field to struct bio
Christoph Hellwig
hch at lst.de
Wed Jun 10 08:45:53 UTC 2015
On Wed, Jun 10, 2015 at 12:50:54PM +1000, Neil Brown wrote:
> This introduces a use-after-free. put_buf(r1_bio) can result in bio_put on
> 'bio'.
> It is safe to move the put_buf call after the md_done_sync(), but it is
> probably best to leave the 'update' variable as it. i.e. Just change:
>
> - int uptodate = test_bit(BIO_UPTODATE, &bio->bi_flags);
> + int uptodate = !bio->bi_error;
>
>
> I can't see any other problems with the md changes.
Thanks, I'll keep the local uptodate variable for now.
More information about the dm-devel
mailing list