On Tue, Aug 16, 2022 at 03:04:08PM +0800, mawupeng wrote: > > > On 2022/8/16 13:31, Greg KH wrote: > > On Tue, Aug 16, 2022 at 11:27:08AM +0800, mawupeng wrote: > >> Cc Greg > > > > Cc Greg for what? I have no context here at all as to what you want me > > to do.. > > We found a bug related to memory cgroup counter in stable 4.14/4.19. > shmem_mfill_atomic_pte() wrongly called mem_cgroup_cancel_charge() in "success" > path, it should mem_cgroup_uncharge() to dec memory counter instead. > mem_cgroup_cancel_charge() should only be used if this transaction is > unsuccessful and mem_cgroup_uncharge() is used to do this if this transaction > succeed. > > Commit 3fea5a499d57 ("mm: memcontrol: convert page cache to a new mem_cgroup_charge() API") > in v5.8-rc1 change is charge/uncharge/cancel logic so don't have this > problem. > > This counter will underflow to negative maximum value and trigger oom to kill all > process include sshd and leave system unaccessible. > > The reason cc you is that we want to merge this bugfix into stable 4.14/4.19. <formletter> This is not the correct way to submit patches for inclusion in the stable kernel tree. Please read: https://www.kernel.org/doc/html/latest/process/stable-kernel-rules.html for how to do this properly. </formletter>