On Thu 22-08-24 18:30:12, Linus Torvalds wrote: > [ Sorry, on mobile right now, so HTML crud ] > > On Thu, Aug 22, 2024, 17:59 Michal Hocko <mhocko@xxxxxxxx> wrote: > > > > > > And make it clear that it will return NULL if somebody misuses it. > > > > What do you expect users do with the return value then? > > > > NOT. YOUR. PROBLEM. > > It's the problem of the caller. They have already told you they (believe) have no way to handle the failure. So if they learn they can get NULL they will either BUG_ON, put a loop around that or just close eyes and hope for the best. I argue that neither of that is a good option because it leads to a poor and buggy code. Look Linus, I believe we are getting into a circle and I do not have much more to offer into this discussion. I do agree with you that we should define boundaries of GFP_NOFAIL more explicitly. Documentation we have is not an effective way. I strongly disagree that WARN_ONCE and just return NULL and close eyes is a good programming nor it encourages a good programming on the caller side. I have offered to explicitly oops in those cases inside the allocator (while not holding any internal allocator locks) as a sreasonable compromise. I even believe that this is a useful tool in other contexts as well. I haven't heard your opinion on that so far. If I had time to work on that myself I would give it a try. -- Michal Hocko SUSE Labs