linux-stable/drivers/lightnvm
Javier González 6adb03de40 lightnvm: update closed list outside of intr context
When an I/O finishes, full blocks are moved from the open to the closed
list - a lock is taken to protect the list. This happens at the moment
in the interrupt context, which is not correct.

This patch moves this logic to the block workqueue instead, avoiding
holding a spinlock without interrupt save in an interrupt context.

Signed-off-by: Javier González <javier@cnexlabs.com>
Fixes: ff0e498bfa ("lightnvm: manage open and closed blocks sepa...")
Signed-off-by: Matias Bjørling <m@bjorling.me>
Signed-off-by: Jens Axboe <axboe@fb.com>
2016-03-03 14:46:35 -07:00
..
core.c lightnvm: fold get bb tbl when using dual/quad plane mode 2016-03-03 14:45:53 -07:00
gennvm.c lightnvm: manage open and closed blocks separately 2016-01-12 08:21:17 -07:00
gennvm.h lightnvm: update bad block table format 2015-11-16 15:20:25 -07:00
Kconfig lightnvm: do not compile in debugging by default 2015-12-07 09:14:20 -07:00
Makefile lightnvm: core on-disk initialization 2016-01-12 08:21:18 -07:00
rrpc.c lightnvm: update closed list outside of intr context 2016-03-03 14:46:35 -07:00
rrpc.h lightnvm: manage open and closed blocks separately 2016-01-12 08:21:17 -07:00
sysblk.c lightnvm: introduce factory reset 2016-01-12 08:21:18 -07:00