Re: [PATCH] drbd: do not set REQ_PREFLUSH when submitting barrier

From: Christoph Hellwig
Date: Wed May 03 2023 - 00:18:12 EST


On Tue, May 02, 2023 at 11:29:22AM +0200, Christoph Böhmwalder wrote:
> struct bio *bio = bio_alloc(device->ldev->backing_bdev, 0,
> - REQ_OP_FLUSH | REQ_PREFLUSH, GFP_NOIO);
> + REQ_OP_FLUSH, GFP_NOIO);

This isn't going to work. flush bios are (somewhat confusingly)
implemented as writes with no data and the preflush flag. So this
should be:

REQ_OP_WRITE | REQ_PREFLUSH.

and it looks like whatever flushing this does hasn't wroked for a long
time.