mirror of
https://github.com/torvalds/linux.git
synced 2024-11-19 02:21:47 +00:00
d804621d02
The workq can process work in parallel with a remove event, leading to a condition where the workq handler can access freed memory. To remedy, the workq should be terminated prior to freeing memory. Move the termination call earlier in remove and use cancel_work_sync() instead of flush_work() as there is not a need to process any scheduled work when shutting down. Signed-off-by: Matthew R. Ochs <mrochs@linux.vnet.ibm.com> Signed-off-by: Manoj N. Kumar <manoj@linux.vnet.ibm.com> Reviewed-by: Brian King <brking@linux.vnet.ibm.com> Reviewed-by: Tomas Henzl <thenzl@redhat.com> Signed-off-by: James Bottomley <JBottomley@Odin.com> |
||
---|---|---|
.. | ||
common.h | ||
Kconfig | ||
lunmgt.c | ||
main.c | ||
main.h | ||
Makefile | ||
sislite.h | ||
superpipe.c | ||
superpipe.h | ||
vlun.c | ||
vlun.h |