projects
/
GitHub
/
moto-9609
/
android_kernel_motorola_exynos9610.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
combined
(merge:
b47c62c
3129e15
)
Merge branch 'bnx2x-fix-page-allocation-failure'
author
David S. Miller
<davem@davemloft.net>
Mon, 26 Sep 2016 13:43:12 +0000
(09:43 -0400)
committer
David S. Miller
<davem@davemloft.net>
Mon, 26 Sep 2016 13:43:12 +0000
(09:43 -0400)
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] [<
ffffffff8267f7c7
>] dump_stack+0x4d/0x63
[
1207325
.762426] [<
ffffffff8212f8e0
>] warn_alloc_failed+0xe0/0x130
[
1207325
.768756] [<
ffffffff8213c898
>] ? wakeup_kswapd+0x48/0x140
[
1207325
.774914] [<
ffffffff82132afc
>] __alloc_pages_nodemask+0x2bc/0x970
[
1207325
.781761] [<
ffffffff82173691
>] alloc_pages_current+0x91/0x100
[
1207325
.788260] [<
ffffffff8212fa1e
>] alloc_kmem_pages+0xe/0x10
[
1207325
.794329] [<
ffffffff8214c9c8
>] kmalloc_order+0x18/0x50
[
1207325
.800227] [<
ffffffff8214ca26
>] kmalloc_order_trace+0x26/0xb0
[
1207325
.806642] [<
ffffffff82451c68
>] ? _xfer_secondary_pool+0xa8/0x1a0
[
1207325
.813404] [<
ffffffff8217cfda
>] __kmalloc+0x19a/0x1b0
[
1207325
.819142] [<
ffffffffa02fe975
>] bnx2x_set_rx_mode_inner+0x3d5/0x590 [bnx2x]
[
1207325
.827000] [<
ffffffffa02ff52d
>] bnx2x_sp_rtnl_task+0x28d/0x760 [bnx2x]
[
1207325
.834197] [<
ffffffff820695d4
>] process_one_work+0x134/0x3c0
[
1207325
.840522] [<
ffffffff82069981
>] worker_thread+0x121/0x460
[
1207325
.846585] [<
ffffffff82069860
>] ? process_one_work+0x3c0/0x3c0
[
1207325
.853089] [<
ffffffff8206f039
>] kthread+0xc9/0xe0
[
1207325
.858459] [<
ffffffff82070000
>] ? notify_die+0x10/0x40
[
1207325
.864263] [<
ffffffff8206ef70
>] ? kthread_create_on_node+0x180/0x180
[
1207325
.871288] [<
ffffffff826852d2
>] ret_from_fork+0x42/0x70
[
1207325
.877183] [<
ffffffff8206ef70
>] ? kthread_create_on_node+0x180/0x180
v2:
-make use of list_next_entry()
-only use PAGE_SIZE allocations
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Trivial merge