> 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