On Mon, 2014-02-24 at 10:27 +0200, Sagi Grimberg wrote: > On 2/24/2014 9:30 AM, Nicholas A. Bellinger wrote: > > On Sun, 2014-02-23 at 22:53 -0800, Nicholas A. Bellinger wrote: > >> On Sun, 2014-02-23 at 14:19 +0200, Sagi Grimberg wrote: > >>> In T10-PI support we will have memory keys for protection > >>> buffers and signature transactions. We prefer to compact > >>> indicators rather than keeping multiple bools. > >>> > >>> This commit does not change any functionality. > >>> > >>> Signed-off-by: Sagi Grimberg <sagig@xxxxxxxxxxxx> > >>> --- > >>> drivers/infiniband/ulp/iser/iscsi_iser.h | 8 ++++++-- > >>> drivers/infiniband/ulp/iser/iser_memory.c | 4 ++-- > >>> drivers/infiniband/ulp/iser/iser_verbs.c | 2 +- > >>> 3 files changed, 9 insertions(+), 5 deletions(-) > >>> > >>> diff --git a/drivers/infiniband/ulp/iser/iscsi_iser.h b/drivers/infiniband/ulp/iser/iscsi_iser.h > >>> index 5ffa92f..5f7dbfd 100644 > >>> --- a/drivers/infiniband/ulp/iser/iscsi_iser.h > >>> +++ b/drivers/infiniband/ulp/iser/iscsi_iser.h > >>> @@ -280,13 +280,17 @@ struct iser_device { > >>> enum iser_data_dir cmd_dir); > >>> }; > >>> > >>> +enum iser_reg_indicator { > >>> + ISER_DATA_KEY_VALID = 1 << 0, > >>> +}; > >>> + > >>> struct fast_reg_descriptor { > >>> struct list_head list; > >>> /* For fast registration - FRWR */ > >>> struct ib_mr *data_mr; > >>> struct ib_fast_reg_page_list *data_frpl; > >>> - /* Valid for fast registration flag */ > >>> - bool valid; > >>> + /* registration indicators container */ > >>> + u8 reg_indicators; > >>> }; > >>> > >>> struct iser_conn { > >>> diff --git a/drivers/infiniband/ulp/iser/iser_memory.c b/drivers/infiniband/ulp/iser/iser_memory.c > >>> index 0e029fe..3edab18 100644 > >>> --- a/drivers/infiniband/ulp/iser/iser_memory.c > >>> +++ b/drivers/infiniband/ulp/iser/iser_memory.c > >>> @@ -479,7 +479,7 @@ static int iser_fast_reg_mr(struct iscsi_iser_task *iser_task, > >>> return -EINVAL; > >>> } > >>> > >>> - if (!desc->valid) { > >>> + if (!(desc->reg_indicators & ISER_DATA_KEY_VALID)) { > >>> memset(&inv_wr, 0, sizeof(inv_wr)); > >>> inv_wr.wr_id = ISER_FRWR_LI_WRID; > >>> inv_wr.opcode = IB_WR_LOCAL_INV; > >> This block doesn't apply either.. > >> > >> ISER_FRWR_LI_WRID does not appear to be defined anywhere in v3.14-rc2 > >> code..? Is this patch missing a new definition..? > > Er, missed the bit wrt: > > > > IB/iser: Suppress completion for fast registration work requests > > > > Applied along with ib_iser + ib_isert patches to target-pending/rdma-dif > > > > --nab > > OK, I see you got the missing piece. > This fixes all your conflicts right (I verified it before myself)? > All good, thanks. --nab -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html