Re: next: Commit 'mm: Prevent __alloc_pages_nodemask() RCU CPU stall ...' causing hang on sparc32 qemu

From: Guenter Roeck
Date: Thu Dec 01 2016 - 01:57:12 EST


Hi Paul,

On Wed, Nov 30, 2016 at 05:19:50PM -0800, Paul E. McKenney wrote:
[ ... ]

> > > >
> > > > BUG: sleeping function called from invalid context at mm/page_alloc.c:3775
[ ... ]
>
> Whew! You had me going for a bit there. ;-)

Bisect results are here ... the culprit is, again, commit 2d66cccd73 ("mm:
Prevent __alloc_pages_nodemask() RCU CPU stall warnings"), and reverting that
patch fixes the problem. Good that you dropped it already :-).

Guenter

---
# bad: [59ab0083490c8a871b51e893bae5806e55901d7e] Add linux-next specific files for 20161130
# good: [e5517c2a5a49ed5e99047008629f1cd60246ea0e] Linux 4.9-rc7
git bisect start 'HEAD' 'v4.9-rc7'
# good: [187f99e5c22bb3fab8b330f3ebbbd235d238f3f8] Merge remote-tracking branch 'crypto/master'
git bisect good 187f99e5c22bb3fab8b330f3ebbbd235d238f3f8
# good: [36126657c908e822523b8563f9b1512937c0f342] Merge remote-tracking branch 'tip/auto-latest'
git bisect good 36126657c908e822523b8563f9b1512937c0f342
# good: [2d2139c5c746ec61024fdfa9c36e4e034bb18e59] Merge tag 'iio-for-4.10d' of git://git.kernel.org/pub/scm/linux/kernel/git/jic23/iio into staging-next
git bisect good 2d2139c5c746ec61024fdfa9c36e4e034bb18e59
# bad: [926a60551123048c589b45abee2a2ec4c924ab21] Merge remote-tracking branch 'extcon/extcon-next'
git bisect bad 926a60551123048c589b45abee2a2ec4c924ab21
# bad: [1541655795a90720b8a094c8cc39f582dec17398] Merge remote-tracking branch 'tty/tty-next'
git bisect bad 1541655795a90720b8a094c8cc39f582dec17398
# bad: [69a6720a1e54519d9bf8563764e9e93bf1bd6a84] Merge remote-tracking branch 'kvm-arm/next'
git bisect bad 69a6720a1e54519d9bf8563764e9e93bf1bd6a84
# good: [33b8b045b93f9104c61ecad1865af961b3bef03e] Merge remote-tracking branch 'ftrace/for-next'
git bisect good 33b8b045b93f9104c61ecad1865af961b3bef03e
# good: [8370c3d08bd98576d97514eca29970e03767a5d1] kvm: svm: Add kvm_fast_pio_in support
git bisect good 8370c3d08bd98576d97514eca29970e03767a5d1
# good: [0a895142323de3eebb0b753d3d8c0e768ff179d9] mm: Prevent shrink_node() RCU CPU stall warnings
git bisect good 0a895142323de3eebb0b753d3d8c0e768ff179d9
# bad: [f8045446ca778333e960dcb9e30a5858ff2b8c20] srcu: Force full grace-period ordering
git bisect bad f8045446ca778333e960dcb9e30a5858ff2b8c20
# good: [f660d64912ccadadcdce6dfb39eb06924dd93767] doc: Fix RCU requirements typos
git bisect good f660d64912ccadadcdce6dfb39eb06924dd93767
# good: [d2db185bfee894c573faebed93461e9938bdbb61] rcu: Remove short-term CPU kicking
git bisect good d2db185bfee894c573faebed93461e9938bdbb61
# bad: [2d66cccd73436ac9985a08e5c2f82e4344f72264] mm: Prevent __alloc_pages_nodemask() RCU CPU stall warnings
git bisect bad 2d66cccd73436ac9985a08e5c2f82e4344f72264
# good: [34c53f5cd399801b083047cc9cf2ad3ed17c3144] mm: Prevent shrink_node_memcg() RCU CPU stall warnings
git bisect good 34c53f5cd399801b083047cc9cf2ad3ed17c3144
# first bad commit: [2d66cccd73436ac9985a08e5c2f82e4344f72264] mm: Prevent __alloc_pages_nodemask() RCU CPU stall warnings