Re: [PATCH 05/11] IB/iser: Replace fastreg descriptor valid bool with indicators container

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]
  Powered by Linux