On Wed 20-09-23 15:25:23, Jeremi Piotrowski wrote: > On 9/20/2023 1:07 PM, Michal Hocko wrote: [...] > > I mean, normally I would be just fine reverting this API change because > > it is disruptive but the only way to have the file available and not > > break somebody is to revert 58056f77502f ("memcg, kmem: further > > deprecate kmem.limit_in_bytes") as well. Or to ignore any value written > > there but that sounds rather dubious. Although one could argue this > > would mimic nokmem kernel option. > > > > I just want to make sure we don't introduce yet another new behavior in this legacy > system. I have not seen breakage due to 58056f77502f. Mimicing nokmem sounds good but > does this mean "don't enforce limits" (that should be fine) or "ignore writes to the limit" > (=don't event store the written limit). The latter might have unintended consequences. Yes it would mean that the limit is never enforced. Bad as it is the thing is that the hard limit on kernel memory is broken by design and unfixable. This causes all sorts of unexpected kernel allocation failures that this is simply unsafe to use. All that being said I can see the following options 1) keep the current upstream status and not export the file 2) revert both 58056f77502f and 86327e8eb94 and make it clear that kmem.limit_in_bytes is unsupported so failures or misbehavior as a result of the limit being hit are likely not going to be investigated or fixed. 3) reverting like in 2) but never inforce the limit (so basically nokmem semantic) Shakeel, Johannes, Roman, Muchun Song what do you think? -- Michal Hocko SUSE Labs