Spdk/lib/ftl
Wojciech Malikowski 2cc6bd2a26 lib/ftl: Skip block with ongoing write during relocation
In case ANM event occurs on open band there
can be situation that reloc will try to read
block on which there is ongoing write.
This is happening because lba valid map is
updated before write  submission to allow sent
consistent metadata to disk before all user
writes are completed.

Added write offset to the each chunk and
add check to reloc if particular ppa is written
on that chunk.

Change-Id: Ic95a06e69381d2152a86984b65a0975afaff955d
Signed-off-by: Wojciech Malikowski <wojciech.malikowski@intel.com>
Reviewed-on: https://review.gerrithub.io/c/spdk/spdk/+/458056
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2019-07-01 03:29:00 +00:00
..
ftl_anm.c lib/ftl: fix the unclear PAGE_SIZE 2019-06-11 18:12:27 +00:00
ftl_anm.h check_format: Verify #include syntax 2019-01-29 00:12:07 +00:00
ftl_band.c lib/ftl: Skip block with ongoing write during relocation 2019-07-01 03:29:00 +00:00
ftl_band.h lib/ftl: Skip block with ongoing write during relocation 2019-07-01 03:29:00 +00:00
ftl_core.c lib/ftl: Skip block with ongoing write during relocation 2019-07-01 03:29:00 +00:00
ftl_core.h lib/ftl: Skip block with ongoing write during relocation 2019-07-01 03:29:00 +00:00
ftl_debug.c lib/ftl: Track cached lba map segments 2019-06-11 06:21:46 +00:00
ftl_debug.h lib/ftl: Remove ftl_md struct from band 2019-06-07 04:39:14 +00:00
ftl_init.c lib/ftl: Skip block with ongoing write during relocation 2019-07-01 03:29:00 +00:00
ftl_io.c lib/ftl: fix the unclear PAGE_SIZE 2019-06-11 18:12:27 +00:00
ftl_io.h lib/ftl: Remove FTL_IO_KEEP_ALIVE flag from ftl_io_flags 2019-06-11 06:21:46 +00:00
ftl_ppa.h ftl: Initial implementation 2019-01-11 09:15:39 +00:00
ftl_reloc.c lib/ftl: Skip block with ongoing write during relocation 2019-07-01 03:29:00 +00:00
ftl_reloc.h check_format: Verify #include syntax 2019-01-29 00:12:07 +00:00
ftl_restore.c lib/ftl: Initialize band tail metadata physical address 2019-07-01 03:29:00 +00:00
ftl_rwb.c env: Add free_space parameter to spdk_ring_enqueue 2019-06-05 05:23:58 +00:00
ftl_rwb.h lib/ftl: improved padding during shutdown 2019-05-24 23:29:22 +00:00
ftl_trace.c lib/ftl: Remove ftl_md struct from band 2019-06-07 04:39:14 +00:00
ftl_trace.h lib/ftl: traces refactor 2019-04-01 09:05:33 +00:00
Makefile ftl: Added trace support 2019-01-18 18:58:04 +00:00