On 7/24/24 3:31 PM, Michal Hocko wrote: > On Wed 24-07-24 06:23:29, Christoph Hellwig wrote: >> On Wed, Jul 24, 2024 at 03:21:13PM +0200, Michal Hocko wrote: >> > Scope API is tricky here. Exactly because the scope itself could have >> > opportunistic GFP_NOWAIT allocations. >> >> Really, where? That just sounds f**cked up as callers using any kind >> of nofail API can be broken by a caller higher in the stack. > > I do not see this a problem. There is no real reason to have a NOWAIT > allocation down the stack that has a different fallback strategy. > I am not saying that this is the current practice because I do not know > that but I am saying that this is not impossible to imagine and it makes > scoped NOFAIL context subtle and error prone. I don't think Christoph proposed scoped NOFAIL, just use scoped NOFS/NOIO together with GFP_KERNEL_NOFAIL intead of introducing GFP_NOFS_NOFAIL. >> And that's totally independ of adding a NOFS/NOIO helper, so it'll need >> to be fixed. >> >> Adding more NOFS/NOIO wrappers while we're trying to kill the flag just >> is not helpful going forward. > > NOFS, NOIO scopes are both compatible with NOFAIL and NOWAIT contexts. >