linux/drivers/lightnvm
Igor Konopko e69397ea05 lightnvm: track inflight target creations
When creation process is still in progress, target is not yet on
targets list. This causes a chance for removing whole lightnvm
subsystem by calling nvm_unregister() in the meantime and finally by
causing kernel panic inside target init function.

This patch changes the behaviour by adding kref variable which tracks
all the users of nvm_dev structure. When nvm_dev is allocated, kref
value is set to 1. Then before every target creation the value is
increased and decreased after target removal. The extra reference
is decreased when nvm subsystem is unregistered.

Signed-off-by: Igor Konopko <igor.j.konopko@intel.com>
Reviewed-by: Javier González <javier@javigon.com>
Signed-off-by: Matias Bjørling <mb@lightnvm.io>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2019-05-06 10:19:19 -06:00
..
core.c lightnvm: track inflight target creations 2019-05-06 10:19:19 -06:00
Kconfig lightnvm: remove dependencies on BLK_DEV_NVME and PCI 2018-10-09 08:25:05 -06:00
Makefile lightnvm: remove rrpc 2018-01-05 08:50:12 -07:00
pblk-cache.c lightnvm: pblk: IO path reorganization 2019-05-06 10:19:19 -06:00
pblk-core.c lightnvm: pblk: GC error handling 2019-05-06 10:19:18 -06:00
pblk-gc.c lightnvm: pblk: GC error handling 2019-05-06 10:19:18 -06:00
pblk-init.c lightnvm: pblk: IO path reorganization 2019-05-06 10:19:19 -06:00
pblk-map.c lightnvm: pblk: ensure that erase is chunk aligned 2019-05-06 10:19:17 -06:00
pblk-rb.c lightnvm: pblk: fix lock order in pblk_rb_tear_down_check 2019-05-06 10:19:18 -06:00
pblk-read.c lightnvm: pblk: IO path reorganization 2019-05-06 10:19:19 -06:00
pblk-recovery.c lightnvm: pblk: recover only written metadata 2019-05-06 10:19:19 -06:00
pblk-rl.c pblk: fix max_io calculation 2019-03-07 08:59:26 -07:00
pblk-sysfs.c lightnvm: pblk: support packed metadata 2018-12-11 12:22:35 -07:00
pblk-trace.h lightnvm: pblk: fix TRACE_INCLUDE_PATH 2019-02-11 08:18:07 -07:00
pblk-write.c lightnvm: pblk: kick writer on write recovery path 2019-05-06 10:19:18 -06:00
pblk.h lightnvm: pblk: IO path reorganization 2019-05-06 10:19:19 -06:00