Re: [PATCH] lightnvm: do not load L2P table if not supported

From: Matias BjÃrling
Date: Wed Mar 02 2016 - 13:54:04 EST


On 03/02/2016 04:21 PM, Javier GonzÃlez wrote:
An Open-Channel SSD can work on two modes: (i) hybrid mode, where the
L2P table is maintained both by the host and by the device; and (ii)
full host-based, where the L2P table is uniquely maintained by the host.
The current rrpc target operates on hybrid mode.

In the advent of a new target implementing the full host-based mode, do
not assume that the L2P table must be loaded on the generic media
manager; check device properties loaded on the identify command instead.

Signed-off-by: Javier GonzÃlez <javier@xxxxxxxxxxxx>
---
drivers/lightnvm/gennvm.c | 3 +++
1 file changed, 3 insertions(+)

diff --git a/drivers/lightnvm/gennvm.c b/drivers/lightnvm/gennvm.c
index 42c1c2a..0625d42 100644
--- a/drivers/lightnvm/gennvm.c
+++ b/drivers/lightnvm/gennvm.c
@@ -257,6 +257,9 @@ static int gennvm_blocks_init(struct nvm_dev *dev, struct gen_nvm *gn)
}
}

+ if (!(dev->identity.dom & NVM_RSP_L2P))
+ return 0;
+
if (dev->ops->get_l2p_tbl) {
ret = dev->ops->get_l2p_tbl(dev, 0, dev->total_secs,
gennvm_block_map, dev);


Thanks, applied for 4.6.