Re: suppress page allocation failure warnings from sys_listxattr

From: Dave Jones
Date: Wed Mar 28 2012 - 23:00:14 EST


On Wed, Mar 28, 2012 at 07:28:04PM -0700, Andrew Morton wrote:
> > But it looks like
> > key_add (see other thread from this evening) and probably others can be
> > called as a user and gobble up vmalloc space. omnomnom.
>
> hm, the keys code appears to prevent the user from reserving more than
> 20000 bytes of memory total (key_payload_reserve()), so it doesn't look
> very useful for screwing up vmalloc().

Then how did I trick it into trying an order 8 allocation ?

trinity: page allocation failure: order:8, mode:0x40d0
Pid: 27119, comm: trinity Not tainted 3.3.0+ #31
Call Trace:
[<ffffffff8115dd66>] warn_alloc_failed+0xf6/0x160
[<ffffffff816ad436>] ? __alloc_pages_direct_compact+0x1d0/0x1e2
[<ffffffff81162492>] __alloc_pages_nodemask+0x8b2/0xb10
[<ffffffff8119dae6>] alloc_pages_current+0xb6/0x120
[<ffffffff8115d3b4>] __get_free_pages+0x14/0x50
[<ffffffff811ac64f>] kmalloc_order_trace+0x3f/0x1a0
[<ffffffff811aca0a>] __kmalloc+0x25a/0x280
[<ffffffff812c034a>] sys_add_key+0x9a/0x210
[<ffffffff813386be>] ? trace_hardirqs_on_thunk+0x3a/0x3f
[<ffffffff816c04e9>] system_call_fastpath+0x16/0x1b

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/