Re: WARNING: CPU: 1 PID: 52 at mm/page_alloc.c:4826 __alloc_pages_nodemask (Re: [PATCH 5/5] sysctl: pass kernel pointers to ->proc_handler)

From: Christoph Hellwig
Date: Mon Jun 08 2020 - 02:51:26 EST


On Thu, Jun 04, 2020 at 10:22:21PM +0200, Vegard Nossum wrote:
> It's easy to reproduce by just doing
>
> read(open("/proc/sys/vm/swappiness", O_RDONLY), 0, 512UL * 1024 * 1024
> * 1024);
>
> or so. Reverting the commit fixes the issue for me.

Yes, doing giant allocations will fail and trace. We have to options
here that both seems sensible:

- trunate sysctrl calls to some sensible length
- (optionally) use vmalloc

Is this a real application or just a test case trying to do the
stupidmost possible thing?