[PATCH v2 0/4] Fix kmemleak races on the disable/error path

From: Catalin Marinas
Date: Mon Jun 08 2015 - 10:29:41 EST


This is a follow-up to the initial patch fixing the kmemleak_scan page
fault during kmemleak disabling:

http://article.gmane.org/gmane.linux.kernel.mm/133707

The first patch is pretty much the same, apart from a clearer
(hopefully) commit log and code comment regarding the ordering of
kmemleak_free_enabled with the scanning thread. The race between
kmemleak_free() and kmemleak_do_cleanup() is fixed in the second patch.

The third patch fixes a potential deadlock on scan_mutex between the
kmemleak_scan_thread and kmemleak_do_cleanup().

The fourth patch is more of a theoretical scenario but worth fixing the
lock acquiring order.

Catalin Marinas (4):
mm: kmemleak: Allow safe memory scanning during kmemleak disabling
mm: kmemleak: Fix delete_object_*() race when called on the same
memory block
mm: kmemleak: Do not acquire scan_mutex in kmemleak_do_cleanup()
mm: kmemleak: Avoid deadlock on the kmemleak object insertion error
path

mm/kmemleak.c | 75 +++++++++++++++++++++++++++++++++++++++++------------------
1 file changed, 53 insertions(+), 22 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/