> On 11 Sep 2018, at 10.50, Javier Gonzalez <javier@xxxxxxxxxxxx> wrote: > >> 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. Since Igor will send a patch for the OOB, can you pick this up separately? No changes needed after rebase. Thanks, Javier
Attachment:
signature.asc
Description: Message signed with OpenPGP