Spdk/lib/ftl
Kozlowski Mateusz c332181331 FTL: Move base device sb to LBA 0
Moving the superblock of the base device to sector 0, in order to
prevent other bdevs (e.g. GPT or blobstore) from potentially hijacking
the base device during startup (if their metadata by 'luck' manages to
find itself at sector 0 of band 0, which depending on the order of
operations could be very likely).

Signed-off-by: Kozlowski Mateusz <mateusz.kozlowski@intel.com>
Change-Id: I8a6eb3c89a229f443ef23d975a8ff0880ba65b08
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14143
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2022-09-20 19:24:26 +00:00
..
mngt FTL: Move base device sb to LBA 0 2022-09-20 19:24:26 +00:00
upgrade ftl: Add explicit values to the ftl_layout_region_type 2022-09-20 19:24:26 +00:00
utils ftl: check structure sizes for future ABI compatibility 2022-09-20 19:24:26 +00:00
ftl_band_ops.c lib/ftl: Don't retry on write failure 2022-09-20 19:24:26 +00:00
ftl_band.c FTL: Move base device sb to LBA 0 2022-09-20 19:24:26 +00:00
ftl_band.h Ftl: Add band state recovery after dirty shutdown 2022-09-07 00:08:34 +00:00
ftl_core.c lib/ftl: Don't retry on write failure 2022-09-20 19:24:26 +00:00
ftl_core.h FTL: Move base device sb to LBA 0 2022-09-20 19:24:26 +00:00
ftl_debug.c ftl: I/O statistics 2022-09-20 19:24:26 +00:00
ftl_debug.h ftl: Unmap functionality 2022-09-09 19:44:29 +00:00
ftl_init.c ftl: Unmap functionality 2022-09-09 19:44:29 +00:00
ftl_internal.h ftl: p2l checkpointing 2022-09-07 00:08:34 +00:00
ftl_io.c ftl: I/O tracing 2022-09-20 19:24:26 +00:00
ftl_io.h ftl: I/O tracing 2022-09-20 19:24:26 +00:00
ftl_l2p_cache.c ftl: I/O statistics 2022-09-20 19:24:26 +00:00
ftl_l2p_cache.h ftl: Unmap functionality 2022-09-09 19:44:29 +00:00
ftl_l2p_flat.c FTL: Add L2P restore path 2022-09-02 17:40:09 +00:00
ftl_l2p_flat.h FTL: Add L2P restore path 2022-09-02 17:40:09 +00:00
ftl_l2p.c ftl: Add recovery and restart path for trim 2022-09-09 19:44:29 +00:00
ftl_l2p.h ftl: Unmap functionality 2022-09-09 19:44:29 +00:00
ftl_layout.c FTL: Move base device sb to LBA 0 2022-09-20 19:24:26 +00:00
ftl_layout.h ftl: Add explicit values to the ftl_layout_region_type 2022-09-20 19:24:26 +00:00
ftl_nv_cache_io.h FTL: Initial nv cache structure 2022-08-12 09:01:40 +00:00
ftl_nv_cache.c lib/ftl: Don't retry on write failure 2022-09-20 19:24:26 +00:00
ftl_nv_cache.h ftl: nv cache write throttling 2022-09-20 19:24:26 +00:00
ftl_p2l.c lib/ftl: Don't retry on write failure 2022-09-20 19:24:26 +00:00
ftl_reloc.c ftl: sequence id tracking 2022-09-07 00:08:34 +00:00
ftl_rq.c ftl: sequence id tracking 2022-09-07 00:08:34 +00:00
ftl_sb_common.h FTL: Add helper functions for superblock upgrade 2022-09-20 19:24:26 +00:00
ftl_sb_current.h ftl: Add upgrade of superblock from version 2 to version 3 2022-09-20 19:24:26 +00:00
ftl_sb.c ftl: Add md upgrade templates for P2L/Band/Chunk from version 0 to version 1 2022-09-20 19:24:26 +00:00
ftl_sb.h ftl: Add metadata upgrade framework 2022-09-20 19:24:26 +00:00
ftl_trace.c ftl: I/O tracing 2022-09-20 19:24:26 +00:00
ftl_trace.h ftl: I/O tracing 2022-09-20 19:24:26 +00:00
ftl_utils.h FTL: Add ftl mempools 2022-08-02 19:00:42 +00:00
ftl_writer.c ftl: p2l checkpointing 2022-09-07 00:08:34 +00:00
ftl_writer.h ftl: sequence id tracking 2022-09-07 00:08:34 +00:00
Makefile lib/ftl: Don't retry on write failure 2022-09-20 19:24:26 +00:00
spdk_ftl.map ftl: I/O statistics 2022-09-20 19:24:26 +00:00