linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] lightnvm: do not reserve lun on l2p loading
@ 2016-02-17 11:16 Javier González
  2016-02-18 15:32 ` Matias Bjørling
  0 siblings, 1 reply; 2+ messages in thread
From: Javier González @ 2016-02-17 11:16 UTC (permalink / raw)
  To: mb; +Cc: linux-kernel, linux-block, Javier González

When the l2p table is loaded, addresses are checked for the lun they
belong to and luns are reserved accordingly. This assumes that metadata
is being stored in the backend device to recover the previous target
configuration. Since this is not yet implemented, this check collides
with some of the core initialization (e.g., sysblock initialization when
a page is formed by several sectors).

We take this check out and for now rely on that the right target will be
created instead. When metadata is stored to recover a target, this check
will come natural as aprt of the recovery strategy.

FIXES c87ea75

Signed-off-by: Javier González <javier@cnexlabs.com>
---
 drivers/lightnvm/gennvm.c | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/drivers/lightnvm/gennvm.c b/drivers/lightnvm/gennvm.c
index b97801c..42c1c2a 100644
--- a/drivers/lightnvm/gennvm.c
+++ b/drivers/lightnvm/gennvm.c
@@ -192,9 +192,6 @@ static int gennvm_block_map(u64 slba, u32 nlb, __le64 *entries, void *private)
 		lun_id = div_u64(pba, dev->sec_per_lun);
 		lun = &gn->luns[lun_id];
 
-		if (!test_bit(lun_id, dev->lun_map))
-			__set_bit(lun_id, dev->lun_map);
-
 		/* Calculate block offset into lun */
 		pba = pba - (dev->sec_per_lun * lun_id);
 		blk = &lun->vlun.blocks[div_u64(pba, dev->sec_per_blk)];
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] lightnvm: do not reserve lun on l2p loading
  2016-02-17 11:16 [PATCH] lightnvm: do not reserve lun on l2p loading Javier González
@ 2016-02-18 15:32 ` Matias Bjørling
  0 siblings, 0 replies; 2+ messages in thread
From: Matias Bjørling @ 2016-02-18 15:32 UTC (permalink / raw)
  To: Javier González; +Cc: linux-kernel, linux-block, Javier González

On 02/17/2016 12:16 PM, Javier González wrote:
> When the l2p table is loaded, addresses are checked for the lun they
> belong to and luns are reserved accordingly. This assumes that metadata
> is being stored in the backend device to recover the previous target
> configuration. Since this is not yet implemented, this check collides
> with some of the core initialization (e.g., sysblock initialization when
> a page is formed by several sectors).
>
> We take this check out and for now rely on that the right target will be
> created instead. When metadata is stored to recover a target, this check
> will come natural as aprt of the recovery strategy.
>
> FIXES c87ea75
>
> Signed-off-by: Javier González <javier@cnexlabs.com>
> ---
>   drivers/lightnvm/gennvm.c | 3 ---
>   1 file changed, 3 deletions(-)
>
> diff --git a/drivers/lightnvm/gennvm.c b/drivers/lightnvm/gennvm.c
> index b97801c..42c1c2a 100644
> --- a/drivers/lightnvm/gennvm.c
> +++ b/drivers/lightnvm/gennvm.c
> @@ -192,9 +192,6 @@ static int gennvm_block_map(u64 slba, u32 nlb, __le64 *entries, void *private)
>   		lun_id = div_u64(pba, dev->sec_per_lun);
>   		lun = &gn->luns[lun_id];
>
> -		if (!test_bit(lun_id, dev->lun_map))
> -			__set_bit(lun_id, dev->lun_map);
> -
>   		/* Calculate block offset into lun */
>   		pba = pba - (dev->sec_per_lun * lun_id);
>   		blk = &lun->vlun.blocks[div_u64(pba, dev->sec_per_blk)];
>

Thanks Javier, applied.

-Matias

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2016-02-18 15:32 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-02-17 11:16 [PATCH] lightnvm: do not reserve lun on l2p loading Javier González
2016-02-18 15:32 ` Matias Bjørling

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).