Re: [PATCH v3 1/3] nvme-rdma: correctly check for target keyed sgl support

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

 




On 5/30/2018 9:39 AM, Steve Wise wrote:
>
> On 5/29/2018 3:23 PM, Ruhl, Michael J wrote:
>>> -----Original Message-----
>>> From: linux-rdma-owner@xxxxxxxxxxxxxxx [mailto:linux-rdma-
>>> owner@xxxxxxxxxxxxxxx] On Behalf Of Steve Wise
>>> Sent: Tuesday, May 29, 2018 2:26 PM
>>> To: axboe@xxxxxxxxx; hch@xxxxxx; Busch, Keith <keith.busch@xxxxxxxxx>;
>>> sagi@xxxxxxxxxxx; linux-nvme@xxxxxxxxxxxxxxxxxxx
>>> Cc: parav@xxxxxxxxxxxx; maxg@xxxxxxxxxxxx; linux-rdma@xxxxxxxxxxxxxxx
>>> Subject: [PATCH v3 1/3] nvme-rdma: correctly check for target keyed sgl
>>> support
>>>
>>> The code was checking bit 20 instead of bit 2.  Also fixed
>>> the log entry.
>>>
>>> Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx>
>>> ---
>>> drivers/nvme/host/rdma.c | 4 ++--
>>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/nvme/host/rdma.c b/drivers/nvme/host/rdma.c
>>> index 1eb4438..f11faa8 100644
>>> --- a/drivers/nvme/host/rdma.c
>>> +++ b/drivers/nvme/host/rdma.c
>>> @@ -1949,8 +1949,8 @@ static struct nvme_ctrl
>>> *nvme_rdma_create_ctrl(struct device *dev,
>>> 	}
>>>
>>> 	/* sanity check keyed sgls */
>>> -	if (!(ctrl->ctrl.sgls & (1 << 20))) {
>>> -		dev_err(ctrl->ctrl.device, "Mandatory keyed sgls are not
>>> support\n");
>>> +	if (!(ctrl->ctrl.sgls & (1 << 2))) {
>>> +		dev_err(ctrl->ctrl.device, "Mandatory keyed sgls are not
>>> supported!\n");
>> I can see that the 2 and 20 are defined for specific things.  Since they are
>> used in several places (in the next 2 patches), is there any chance these
>> could be defined bits?
>>
>> Mike
>>
> That seems reasonable.  I would think these defines could also be shared
> across the host and target.  Perhaps include/linux/nvme.h?  I see both
> nvme/host/nvme.h and nvme/target/nvmet.h include linux/nvme.h.  So they
> could go there. 
>
> Christoph, what do you think?  It seems like these are either nvme
> protocol bits or nvme/f protocol bits...
>
> Steve.
>
>

It looks like these bits are part of the Identify Controller Data
Structure, figure 90 in the 1.2.1 spec.  The SGL Support (SGLS) field
within that struct.   So I guess it belongs in include/linux/nvme.h? 
But I don't see any of this big structure in that header. 



Steve.

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Photo]     [Yosemite News]     [Yosemite Photos]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux