summaryrefslogtreecommitdiffstats
path: root/fs/ubifs
diff options
context:
space:
mode:
authorRichard Weinberger <richard@nod.at>2018-05-16 22:17:03 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2018-07-03 11:21:32 +0200
commit7cff31473f7e9ffa8f54a3ca59387f329d90e3a9 (patch)
treef1bfef2f096e928bc643c3fa52e5d0a1ee71b2a0 /fs/ubifs
parent4028e39598eb12ed50702b50dde6bb83bbdf0fe3 (diff)
downloadlinux-stable-7cff31473f7e9ffa8f54a3ca59387f329d90e3a9.tar.gz
linux-stable-7cff31473f7e9ffa8f54a3ca59387f329d90e3a9.tar.bz2
linux-stable-7cff31473f7e9ffa8f54a3ca59387f329d90e3a9.zip
ubi: fastmap: Cancel work upon detach
commit 6e7d80161066c99d12580d1b985cb1408bb58cf1 upstream. Ben Hutchings pointed out that 29b7a6fa1ec0 ("ubi: fastmap: Don't flush fastmap work on detach") does not really fix the problem, it just reduces the risk to hit the race window where fastmap work races against free()'ing ubi->volumes[]. The correct approach is making sure that no more fastmap work is in progress before we free ubi data structures. So we cancel fastmap work right after the ubi background thread is stopped. By setting ubi->thread_enabled to zero we make sure that no further work tries to wake the thread. Fixes: 29b7a6fa1ec0 ("ubi: fastmap: Don't flush fastmap work on detach") Fixes: 74cdaf24004a ("UBI: Fastmap: Fix memory leaks while closing the WL sub-system") Cc: stable@vger.kernel.org Cc: Ben Hutchings <ben.hutchings@codethink.co.uk> Cc: Martin Townsend <mtownsend1973@gmail.com> Signed-off-by: Richard Weinberger <richard@nod.at> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'fs/ubifs')
0 files changed, 0 insertions, 0 deletions