Thread (26 messages) 26 messages, 4 authors, 2021-10-29

Re: [PATCH 2/4] mm/vmalloc: add support for __GFP_NOFAIL

From: Michal Hocko <mhocko@suse.com>
Date: 2021-10-26 07:03:05
Also in: linux-fsdevel, lkml

On Tue 26-10-21 09:59:36, Neil Brown wrote:
On Tue, 26 Oct 2021, Michal Hocko wrote:
[...]
quoted
@@ -3032,6 +3036,10 @@ void *__vmalloc_node_range(unsigned long size, unsigned long align,
 		warn_alloc(gfp_mask, NULL,
 			"vmalloc error: size %lu, vm_struct allocation failed",
 			real_size);
+		if (gfp_mask & __GFP_NOFAIL) {
+			schedule_timeout_uninterruptible(1);
+			goto again;
+		}
Shouldn't the retry happen *before* the warning?
I've done it after to catch the "depleted or fragmented" vmalloc space.
This is not related to the memory available and therefore it won't be
handled by the oom killer. The error message shouldn't imply the vmalloc
allocation failure IMHO but I am open to suggestions.

-- 
Michal Hocko
SUSE Labs
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help