On 10/04/2018 09:13 AM, Javier González wrote:
Changes singe V1: - remove sanity checks on the fast path This patchset implements support for retrieving chunk metadata on reset. This is the base for implementing wear-leveling and allowing chunks to shrink at runtime. Javier Javier González (2): lightnvm: pblk: add helper for printing chunk state lightnvm: pblk: retrieve chunk metadata on erase drivers/lightnvm/core.c | 44 ++++++++++++++++++++++++++++++++++-- drivers/lightnvm/pblk-core.c | 54 +++++++++++++++++++++++++++++++++----------- drivers/lightnvm/pblk.h | 9 ++++++++ 3 files changed, 92 insertions(+), 15 deletions(-)
Right now there isn't a way in the spec to tell if the drive supports this feature or not, and DSM Reset doesn't support it either. Making it a bug in the spec. Until the updated spec is out, I like to avoid adding this feature into the kernel.
The Get Log Page approach can be used for wear-levelling information. Similarly for knowing when a chunk shrink, pblk can't rely on a chunk not shrinking at runtime (and reporting early close error), so in the case this happens, pblk can either continue business as usual, or resync with the drive.