From: Liam R. Howlett Date: Mon, 10 Dec 2018 15:51:21 +0000 (-0500) Subject: maple_tree: Fix mas_nomem logic. X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=cad501bf127b8f16bcd441cdf86bf78af5d34831;p=users%2Fjedix%2Flinux-maple.git maple_tree: Fix mas_nomem logic. Always call mas_nomem to ensure race conditions don't result in memory leak. see commit 3939a7fd0b94f11f376670592b2845451569675c for more details. Signed-off-by: Liam R. Howlett --- diff --git a/lib/maple_tree.c b/lib/maple_tree.c index d4d14030e874..e10847d60dc5 100644 --- a/lib/maple_tree.c +++ b/lib/maple_tree.c @@ -733,10 +733,8 @@ int mtree_insert_range(struct maple_tree *mt, unsigned long start, mtree_lock(ms.tree); retry: walked = _maple_setup_insert(&ms); - if (mas_is_err(&ms)) { - if (mas_nomem(&ms, gfp)) - goto retry; - } + if(mas_nomem(&ms, gfp)) + goto retry; if (walked != NULL) goto already_exists;