On 26.07.22 09:24, Kefeng Wang wrote: > If a process has no enough memory to allocate a new virtual mapping, we > may meet kinds of error, eg, fork cannot allocate memory, SIGBUS error > in shmem, but it is difficult to confirm them, let's add some debug > information to easy to check this scenario if __vm_enough_memory fails. > > Reported-by: Yongqiang Liu <liuyongqiang13@xxxxxxxxxx> > Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> > --- > mm/util.c | 2 ++ > 1 file changed, 2 insertions(+) > > diff --git a/mm/util.c b/mm/util.c > index 1266a33a49ea..19bfff8a0ad6 100644 > --- a/mm/util.c > +++ b/mm/util.c > @@ -1020,6 +1020,8 @@ int __vm_enough_memory(struct mm_struct *mm, long pages, int cap_sys_admin) > if (percpu_counter_read_positive(&vm_committed_as) < allowed) > return 0; > error: > + pr_warn("%s: pid: %d, comm: %s, no enough memory for the allocation\n", > + __func__, current->pid, current->comm); > vm_unacct_memory(pages); > > return -ENOMEM; Users can easily spam the kernel log, no? Maybe at least ratelimit. -- Thanks, David / dhildenb