On 06/06/2016 05:40 PM, Mike Christie wrote:
On 06/06/2016 01:46 AM, Hannes Reinecke wrote:
On 06/05/2016 09:32 PM, mchri...@redhat.com wrote:
From: Mike Christie <mchri...@redhat.com>

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 <mchri...@redhat.com>
---
  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;
}




Indeed, you are correct.

Reviewed-by: Hannes Reinecke <h...@suse.com>

Cheers,

Hannes
--
Dr. Hannes Reinecke                   zSeries & Storage
h...@suse.de                          +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: J. Hawn, J. Guild, F. Imendörffer, HRB 16746 (AG Nürnberg)

Reply via email to