Re: [PATCH v4 0/5] lightnvm: Flexible metadata

2018-11-30 Thread Matias Bjørling

On 11/29/2018 08:16 AM, Igor Konopko wrote:

This series of patches extends the way how pblk can
store L2P sector metadata. After this set of changes
any size of NVMe metadata is supported in pblk.
Also there is an support for case without NVMe metadata.

Changes v3 --> v4:
-rename nvm_alloc_dma_pool() to nvm_create_dma_pool()
-split pblk_get_meta() calls and lba setting into
two operations for better core readability
-fixing compilation with CONFIG_NVM disabled
-getting rid of unnecessary memcpy for packed metadata
on write path
-support for drives with oob size >0 and <16B in packed
metadata mode
-minor commit message updates

Changes v2 --> v3:
-Rebase on top of ocssd/for-4.21/core
-get/set_meta_lba helpers were removed
-dma reallocation was replaced with single allocation
-oob metadata size was added to pblk structure
-proper checks on pblk creation were added
  
Changes v1 --> v2:

-Revert sector meta size back to 16b for pblk
-Dma pool for larger oob meta are handled in core instead of pblk
-Pblk oob meta helpers uses __le64 as input outpu instead of u64
-Other minor fixes based on v1 patch review

Igor Konopko (5):
   lightnvm: pblk: Move lba list to partial read context
   lightnvm: pblk: Helpers for OOB metadata
   lightnvm: Flexible DMA pool entry size
   lightnvm: Disable interleaved metadata
   lightnvm: pblk: Support for packed metadata

  drivers/lightnvm/core.c  | 30 --
  drivers/lightnvm/pblk-core.c | 61 +++--
  drivers/lightnvm/pblk-init.c | 44 +--
  drivers/lightnvm/pblk-map.c  | 20 +++-
  drivers/lightnvm/pblk-rb.c   |  3 ++
  drivers/lightnvm/pblk-read.c | 66 +++-
  drivers/lightnvm/pblk-recovery.c | 25 +--
  drivers/lightnvm/pblk-sysfs.c|  7 +
  drivers/lightnvm/pblk-write.c|  9 +++---
  drivers/lightnvm/pblk.h  | 24 +--
  drivers/nvme/host/lightnvm.c | 16 ++
  include/linux/lightnvm.h |  8 -
  12 files changed, 233 insertions(+), 80 deletions(-)



Igor,

I pushed the preparation patch to core. Please rebase and I'll pick up 
the patches.


Thank you.



Re: [PATCH v4 0/5] lightnvm: Flexible metadata

2018-11-29 Thread Javier Gonzalez
> On 29 Nov 2018, at 08.16, Igor Konopko  wrote:
> 
> This series of patches extends the way how pblk can
> store L2P sector metadata. After this set of changes
> any size of NVMe metadata is supported in pblk.
> Also there is an support for case without NVMe metadata.
> 
> Changes v3 --> v4:
> -rename nvm_alloc_dma_pool() to nvm_create_dma_pool()
> -split pblk_get_meta() calls and lba setting into
> two operations for better core readability
> -fixing compilation with CONFIG_NVM disabled
> -getting rid of unnecessary memcpy for packed metadata
> on write path
> -support for drives with oob size >0 and <16B in packed
> metadata mode
> -minor commit message updates
> 
> Changes v2 --> v3:
> -Rebase on top of ocssd/for-4.21/core
> -get/set_meta_lba helpers were removed
> -dma reallocation was replaced with single allocation
> -oob metadata size was added to pblk structure
> -proper checks on pblk creation were added
> 
> Changes v1 --> v2:
> -Revert sector meta size back to 16b for pblk
> -Dma pool for larger oob meta are handled in core instead of pblk
> -Pblk oob meta helpers uses __le64 as input outpu instead of u64
> -Other minor fixes based on v1 patch review
> 
> Igor Konopko (5):
>  lightnvm: pblk: Move lba list to partial read context
>  lightnvm: pblk: Helpers for OOB metadata
>  lightnvm: Flexible DMA pool entry size
>  lightnvm: Disable interleaved metadata
>  lightnvm: pblk: Support for packed metadata
> 
> drivers/lightnvm/core.c  | 30 --
> drivers/lightnvm/pblk-core.c | 61 +++--
> drivers/lightnvm/pblk-init.c | 44 +--
> drivers/lightnvm/pblk-map.c  | 20 +++-
> drivers/lightnvm/pblk-rb.c   |  3 ++
> drivers/lightnvm/pblk-read.c | 66 +++-
> drivers/lightnvm/pblk-recovery.c | 25 +--
> drivers/lightnvm/pblk-sysfs.c|  7 +
> drivers/lightnvm/pblk-write.c|  9 +++---
> drivers/lightnvm/pblk.h  | 24 +--
> drivers/nvme/host/lightnvm.c | 16 ++
> include/linux/lightnvm.h |  8 -
> 12 files changed, 233 insertions(+), 80 deletions(-)
> 
> --
> 2.14.5


I gave a pass to V4 and it looks good.

We will test the patches suite. If nothing comes up, and Matias does not
have any reservations, it should be good for 4.21.

Javier


signature.asc
Description: Message signed with OpenPGP


[PATCH v4 0/5] lightnvm: Flexible metadata

2018-11-28 Thread Igor Konopko
This series of patches extends the way how pblk can
store L2P sector metadata. After this set of changes
any size of NVMe metadata is supported in pblk.
Also there is an support for case without NVMe metadata.

Changes v3 --> v4:
-rename nvm_alloc_dma_pool() to nvm_create_dma_pool()
-split pblk_get_meta() calls and lba setting into
two operations for better core readability
-fixing compilation with CONFIG_NVM disabled
-getting rid of unnecessary memcpy for packed metadata
on write path
-support for drives with oob size >0 and <16B in packed
metadata mode
-minor commit message updates

Changes v2 --> v3:
-Rebase on top of ocssd/for-4.21/core
-get/set_meta_lba helpers were removed
-dma reallocation was replaced with single allocation
-oob metadata size was added to pblk structure
-proper checks on pblk creation were added
 
Changes v1 --> v2:
-Revert sector meta size back to 16b for pblk
-Dma pool for larger oob meta are handled in core instead of pblk
-Pblk oob meta helpers uses __le64 as input outpu instead of u64
-Other minor fixes based on v1 patch review

Igor Konopko (5):
  lightnvm: pblk: Move lba list to partial read context
  lightnvm: pblk: Helpers for OOB metadata
  lightnvm: Flexible DMA pool entry size
  lightnvm: Disable interleaved metadata
  lightnvm: pblk: Support for packed metadata

 drivers/lightnvm/core.c  | 30 --
 drivers/lightnvm/pblk-core.c | 61 +++--
 drivers/lightnvm/pblk-init.c | 44 +--
 drivers/lightnvm/pblk-map.c  | 20 +++-
 drivers/lightnvm/pblk-rb.c   |  3 ++
 drivers/lightnvm/pblk-read.c | 66 +++-
 drivers/lightnvm/pblk-recovery.c | 25 +--
 drivers/lightnvm/pblk-sysfs.c|  7 +
 drivers/lightnvm/pblk-write.c|  9 +++---
 drivers/lightnvm/pblk.h  | 24 +--
 drivers/nvme/host/lightnvm.c | 16 ++
 include/linux/lightnvm.h |  8 -
 12 files changed, 233 insertions(+), 80 deletions(-)

-- 
2.14.5