mirror of https://gitee.com/openkylin/linux.git
nvme: fix extended data LBA supported setting
This value depands on the metadata support value, so reorder the
initialization to fit.
Fixes: b5be3b392
("nvme: always unregister the integrity profile in __nvme_revalidate_disk")
Signed-off-by: Max Gurtovoy <maxg@mellanox.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Cc: stable@vger.kernel.org
This commit is contained in:
parent
eedffa28c9
commit
c97f414c54
|
@ -1447,8 +1447,8 @@ static void __nvme_revalidate_disk(struct gendisk *disk, struct nvme_id_ns *id)
|
||||||
if (ns->lba_shift == 0)
|
if (ns->lba_shift == 0)
|
||||||
ns->lba_shift = 9;
|
ns->lba_shift = 9;
|
||||||
ns->noiob = le16_to_cpu(id->noiob);
|
ns->noiob = le16_to_cpu(id->noiob);
|
||||||
ns->ext = ns->ms && (id->flbas & NVME_NS_FLBAS_META_EXT);
|
|
||||||
ns->ms = le16_to_cpu(id->lbaf[id->flbas & NVME_NS_FLBAS_LBA_MASK].ms);
|
ns->ms = le16_to_cpu(id->lbaf[id->flbas & NVME_NS_FLBAS_LBA_MASK].ms);
|
||||||
|
ns->ext = ns->ms && (id->flbas & NVME_NS_FLBAS_META_EXT);
|
||||||
/* the PI implementation requires metadata equal t10 pi tuple size */
|
/* the PI implementation requires metadata equal t10 pi tuple size */
|
||||||
if (ns->ms == sizeof(struct t10_pi_tuple))
|
if (ns->ms == sizeof(struct t10_pi_tuple))
|
||||||
ns->pi_type = id->dps & NVME_NS_DPS_PI_MASK;
|
ns->pi_type = id->dps & NVME_NS_DPS_PI_MASK;
|
||||||
|
|
Loading…
Reference in New Issue