Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756447AbcCBSyA (ORCPT ); Wed, 2 Mar 2016 13:54:00 -0500 Received: from mail-lb0-f172.google.com ([209.85.217.172]:33793 "EHLO mail-lb0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754445AbcCBSx6 (ORCPT ); Wed, 2 Mar 2016 13:53:58 -0500 Subject: Re: [PATCH] lightnvm: do not load L2P table if not supported To: =?UTF-8?Q?Javier_Gonz=c3=a1lez?= References: <1456932094-9808-1-git-send-email-javier@javigon.com> Cc: linux-kernel@vger.kernel.org, linux-block@vger.kernel.org, =?UTF-8?Q?Javier_Gonz=c3=a1lez?= From: =?UTF-8?Q?Matias_Bj=c3=b8rling?= Message-ID: <56D736C3.6070109@lightnvm.io> Date: Wed, 2 Mar 2016 19:53:55 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0 MIME-Version: 1.0 In-Reply-To: <1456932094-9808-1-git-send-email-javier@javigon.com> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1174 Lines: 32 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 > --- > 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.