Re: [PATCH] bcachefs: Switch to memalloc_flags_do() for vmalloc allocations

From: Kent Overstreet
Date: Thu Aug 29 2024 - 07:41:35 EST


On Thu, Aug 29, 2024 at 09:19:13AM GMT, Michal Hocko wrote:
> GFP_NOWAIT is explicitly documented as unsupported
> (__vmalloc_node_range_noprof). vmalloc internals are using
> vmap_purge_lock and blocking notifiers (vmap_notify_list) in rare cases
> so PF_MEMALLOC_NORECLAIM is not really sufficient to provide NOWAIT
> semantic (this is really not just about page tables allocations). There
> might be other places that require blocking - I do not claim to be an
> expert on the vmalloc allocator.

Sure, but those are easily fixed, if necessary. We'd also want to be
explicit on whether NORECLAIM needs to be NOWAIT or just NORECLAIM -
those are slightly different things.

As long as it's NORECLAIM that should be fine - it's really only an
issue if we need to map GFP_NOWAIT to PF_MEMALLOC_*.

> It seems that this discussion is not going to be really productive so I
> will leave you here.

I think you'll find these discussions become much more productive when
you're able to stick to the technical, and when you yourself are able to
listen to counterarguments. I remind you that we hash things out here on
the list; we don't resort to things like "this has been decided" or "the
mm community says"; you need to be properly justifying what you want to
do here.

And if people aren't listening to your arguments, that should be a hint
to you that maybe you aren't making good ones.