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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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, send a message with 'unsubscribe linux-mm' in
the body to majordomo@xxxxxxxxx.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Don't email: <a href=mailto:"dont@xxxxxxxxx";> email@xxxxxxxxx </a>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux]     [Linux OMAP]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]