From: David S. Miller Date: Mon, 26 Sep 2016 13:43:12 +0000 (-0400) Subject: Merge branch 'bnx2x-fix-page-allocation-failure' X-Git-Tag: v4.9-rc1~127^2~55 X-Git-Url: http://git.cascardo.info/?p=cascardo%2Flinux.git;a=commitdiff_plain;h=be92e538c2727e917ede78d022de8d64381dc213 Merge branch 'bnx2x-fix-page-allocation-failure' Jason Baron says: ==================== bnx2x: page allocation failure While configuring ~500 multicast addrs, we ran into high order page allocation failures. They don't need to be high order, and thus I'm proposing to split them into at most PAGE_SIZE allocations. Below is a sample failure. [1201902.617882] bnx2x: [bnx2x_set_mc_list:12374(eth0)]Failed to create multicast MACs list: -12 [1207325.695021] kworker/1:0: page allocation failure: order:2, mode:0xc020 [1207325.702059] CPU: 1 PID: 15805 Comm: kworker/1:0 Tainted: G W [1207325.712940] Hardware name: SYNNEX CORPORATION 1x8-X4i SSD 10GE/S5512LE, BIOS V8.810 05/16/2013 [1207325.722284] Workqueue: events bnx2x_sp_rtnl_task [bnx2x] [1207325.728206] 0000000000000000 ffff88012d873a78 ffffffff8267f7c7 000000000000c020 [1207325.736754] 0000000000000000 ffff88012d873b08 ffffffff8212f8e0 fffffffc00000003 [1207325.745301] ffff88041ffecd80 ffff880400000030 0000000000000002 0000c0206800da13 [1207325.753846] Call Trace: [1207325.756789] [] dump_stack+0x4d/0x63 [1207325.762426] [] warn_alloc_failed+0xe0/0x130 [1207325.768756] [] ? wakeup_kswapd+0x48/0x140 [1207325.774914] [] __alloc_pages_nodemask+0x2bc/0x970 [1207325.781761] [] alloc_pages_current+0x91/0x100 [1207325.788260] [] alloc_kmem_pages+0xe/0x10 [1207325.794329] [] kmalloc_order+0x18/0x50 [1207325.800227] [] kmalloc_order_trace+0x26/0xb0 [1207325.806642] [] ? _xfer_secondary_pool+0xa8/0x1a0 [1207325.813404] [] __kmalloc+0x19a/0x1b0 [1207325.819142] [] bnx2x_set_rx_mode_inner+0x3d5/0x590 [bnx2x] [1207325.827000] [] bnx2x_sp_rtnl_task+0x28d/0x760 [bnx2x] [1207325.834197] [] process_one_work+0x134/0x3c0 [1207325.840522] [] worker_thread+0x121/0x460 [1207325.846585] [] ? process_one_work+0x3c0/0x3c0 [1207325.853089] [] kthread+0xc9/0xe0 [1207325.858459] [] ? notify_die+0x10/0x40 [1207325.864263] [] ? kthread_create_on_node+0x180/0x180 [1207325.871288] [] ret_from_fork+0x42/0x70 [1207325.877183] [] ? kthread_create_on_node+0x180/0x180 v2: -make use of list_next_entry() -only use PAGE_SIZE allocations ==================== Signed-off-by: David S. Miller --- be92e538c2727e917ede78d022de8d64381dc213