Re: [PATCH 2/3] lightnvm: do no update csecs and sos on 1.2

From: Javier Gonzalez
Date: Tue Sep 11 2018 - 04:50:35 EST


> On 7 Sep 2018, at 12.28, Matias BjÃrling <mb@xxxxxxxxxxx> wrote:
>
> On 08/29/2018 12:09 PM, Javier GonzÃlez wrote:
>> In the OCSSD 2.0 spec., the sector and metadata sizes are reported though
>> the standard nvme identify command. Thus, the lightnvm subsystem needs
>> to update this information on the geometry structure on bootup.
>> Since 1.2 devices report these values on the OCSSD geometry identify,
>> avoid this update is it is unnecessary and can also corrupt the geometry
>> if the devices does not report the nvme sizes correctly (which is not
>> required by the OCSSD 1.2 spec either) >
>> Signed-off-by: Javier GonzÃlez <javier@xxxxxxxxxxxx>
>> ---
>> drivers/nvme/host/lightnvm.c | 3 +++
>> 1 file changed, 3 insertions(+)
>> diff --git a/drivers/nvme/host/lightnvm.c b/drivers/nvme/host/lightnvm.c
>> index 5bfa354c5dd5..33ed09f8410e 100644
>> --- a/drivers/nvme/host/lightnvm.c
>> +++ b/drivers/nvme/host/lightnvm.c
>> @@ -980,6 +980,9 @@ void nvme_nvm_update_nvm_info(struct nvme_ns *ns)
>> struct nvm_dev *ndev = ns->ndev;
>> struct nvm_geo *geo = &ndev->geo;
>> + if (geo->version == NVM_OCSSD_SPEC_12)
>> + return;
>
> The lba format sizes are not explicit in 2.0 either. For a conforming drive, it should implement the NVM Command Set and expose the LBA format correctly. Although, I do get your incentive, and if it is okay with you, I'll reword the commit message to this and apply it?:
>
> "1.2 devices exposes their data and metadata size through the separate
> identify command. Make sure that the NVMe LBA format does not override
> these values."
>

Sounds good. I'll resend either way as I rebased on top of for-4.20/core
- you can change the commit as you think it suits.

Javier

Attachment: signature.asc
Description: Message signed with OpenPGP