On 06/06/2016 01:46 AM, Hannes Reinecke wrote:
> On 06/05/2016 09:32 PM, [email protected] wrote:
>> From: Mike Christie <[email protected]>
>>
>> Separate the op from the rq_flag_bits and have the target layer
>> set/get the bio using bio_set_op_attrs/bio_op.
>>
>> Signed-off-by: Mike Christie <[email protected]>
>> ---
>>  drivers/target/target_core_iblock.c | 29 ++++++++++++++---------------
>>  drivers/target/target_core_pscsi.c  |  2 +-
>>  2 files changed, 15 insertions(+), 16 deletions(-)
>>
>> diff --git a/drivers/target/target_core_iblock.c 
>> b/drivers/target/target_core_iblock.c
>> index c25109c..22af12f 100644
>> --- a/drivers/target/target_core_iblock.c
>> +++ b/drivers/target/target_core_iblock.c
> [ .. ]
>> @@ -689,18 +690,15 @@ iblock_execute_rw(struct se_cmd *cmd, struct 
>> scatterlist *sgl, u32 sgl_nents,
>>               * Force writethrough using WRITE_FUA if a volatile write cache
>>               * is not enabled, or if initiator set the Force Unit Access 
>> bit.
>>               */
>> +            op = REQ_OP_WRITE;
>>              if (test_bit(QUEUE_FLAG_FUA, &q->queue_flags)) {
>>                      if (cmd->se_cmd_flags & SCF_FUA)
>> -                            rw = WRITE_FUA;
>> +                            op_flags = WRITE_FUA;
>>                      else if (!test_bit(QUEUE_FLAG_WC, &q->queue_flags))
>> -                            rw = WRITE_FUA;
>> -                    else
>> -                            rw = WRITE;
>> -            } else {
>> -                    rw = WRITE;
>> +                            op_flags = WRITE_FUA;
>>              }
> Wrong intendation.

It should be ok. That line is for the QUEUE_FLAG_WC test. We end up with:

op = REQ_OP_WRITE;
if (test_bit(QUEUE_FLAG_FUA, &q->queue_flags)) {
        if (cmd->se_cmd_flags & SCF_FUA)
                op_flags = WRITE_FUA;
        else if (!test_bit(QUEUE_FLAG_WC, &q->queue_flags))
                op_flags = WRITE_FUA;
}





------------------------------------------------------------------------------
What NetFlow Analyzer can do for you? Monitors network bandwidth and traffic
patterns at an interface-level. Reveals which users, apps, and protocols are 
consuming the most bandwidth. Provides multi-vendor support for NetFlow, 
J-Flow, sFlow and other flows. Make informed decisions using capacity 
planning reports. https://ad.doubleclick.net/ddm/clk/305295220;132659582;e
_______________________________________________
Linux-f2fs-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to