Re: [dm-devel] [PATCH 02/35] block: add REQ_OP definitions and bi_op/op fields

From: Mike Christie
Date: Sat Jan 09 2016 - 20:23:01 EST

On 01/09/2016 06:56 PM, Mike Christie wrote:
> On 01/09/2016 07:37 AM, Christoph Hellwig wrote:
>> Seems like this is missing REQ_OP_FLUSH, which still hides as a write?

Oh yeah, to answer the second part of your question, REQ_OP_FLUSH is
only a flush operation like what request_fn drivers wanted.

REQ_PREFLUSH can be set with a REQ_OP_WRITE bio when filesystems want to
do both.

There is then the case where filesystems and blkdev_issue_flush could
just want to request a flush. I left them as a REQ_PREFLUSH with
REQ_OP_WRITE set, so there would be a single code path.

> I might have misunderstood what you wanted or am misunderstanding you now.
> I did not change the flush related code until the last patches. I added
> REQ_OP_FLUSH in patch:
> [PATCH 33/35] block, drivers: add REQ_OP_FLUSH operation
> commit 18dea20363ba245a47bc1bb54f6465b8a05b19af
> Author: Mike Christie <mchristi@xxxxxxxxxx>
> Date: Tue Jan 5 21:02:17 2016 -0600
> block, drivers: add REQ_OP_FLUSH operation
> and I added the REQ_PREFLUSH flag in
> [PATCH 35/35] block, drivers, fs: rename REQ_FLUSH to REQ_PREFLUSH
> commit 303dc6a7cc3673065538ba041562fcd833a619af
> Author: Mike Christie <mchristi@xxxxxxxxxx>
> Date: Thu Jan 7 18:17:03 2016 -0600
> block, drivers, fs: rename REQ_FLUSH to REQ_PREFLUSH
> I did them in separate patches, because I was not sure if they were
> correct with what you requested before, and because they were a little
> more tricky because of how request_fn drivers, make_request_fn drivers,
> and dm-multipath handle flushes differently.
> --
> To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at