]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
maple_tree: Fix mas_nomem logic.
authorLiam R. Howlett <Liam.Howlett@Oracle.com>
Mon, 10 Dec 2018 15:51:21 +0000 (10:51 -0500)
committerLiam R. Howlett <Liam.Howlett@Oracle.com>
Mon, 10 Dec 2018 15:51:21 +0000 (10:51 -0500)
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 <Liam.Howlett@Oracle.com>
lib/maple_tree.c

index d4d14030e87498e40d602d7170c6f7417bdab3a1..e10847d60dc5c22818b2eee2cd73b2eb063c6953 100644 (file)
@@ -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;