Re: [PATCH 4.9 75/95] random: set up the NUMA crng instances after the CRNG is fully initialized

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Theodore Y. Ts'o <tytso@xxxxxxx> wrote:

> On Mon, Apr 23, 2018 at 07:21:10PM +0900, Tetsuo Handa wrote:
> > Greg Kroah-Hartman wrote:
> > > > I think this can be fixed by backporting commit 4a072c71f49b
> > > > "random: silence compiler warnings and fix race" but I'm not sure
> > > > whether that depends on other changes.
> > > 
> > > According to Tetsuo Handa, it's also causing problems in mainline :(
> > > 
> > > Ted, any thoughts as to what to do here?
> > 
> > (Resending because Webmail post was rejected by both stable ML and linux-kernel ML.)
> > 
> > Subject: random: GFP_KERNEL|__GFP_NOFAIL allocation from IRQ context
> > 
> > Hello.
> > 
> > Commit 8ef35c866f8862df ("random: set up the NUMA crng instances after
> > the CRNG is fully initialized") is causing sleep inside atomic warning
> > due to GFP_KERNEL|__GFP_NOFAIL allocation from IRQ context. Though it
> > unlikely sleeps because there will be enough free memory at boot up...
> > 
> > Please don't backport that patch now.
> 
> Yes, please hold off on this in the stable queues as well.  What we'll
> probably need to do is call defer the processing to a workqueue in the
> CONFIG_NUMA case.

What's the resolution here? It's still triggering upstream as well, as of 
69bfd470f462:

[    8.881634] dracut: Switching root

[    8.994899] ================================
[    8.999338] WARNING: inconsistent lock state
[    9.003760] 4.17.0-rc2-00151-g43ae031-dirty #1 Not tainted
[    9.009389] --------------------------------
[    9.013803] inconsistent {HARDIRQ-ON-W} -> {IN-HARDIRQ-W} usage.
[    9.019956] swapper/2/0 [HC1[1]:SC0[0]:HE0:SE1] takes:
[    9.025244]         (ptrval) (fs_reclaim){?.+.}, at: fs_reclaim_acquire.part.87+0x5/0x30
[    9.033598] {HARDIRQ-ON-W} state was registered at:
[    9.038628]   fs_reclaim_acquire.part.87+0x29/0x30
[    9.043568]   kmem_cache_alloc_trace+0x2c/0x240
[    9.048248]   alloc_workqueue_attrs+0x29/0x60
[    9.052755]   workqueue_init+0x4a/0x2e4
[    9.056741]   kernel_init_freeable+0x108/0x286
[    9.061335]   kernel_init+0xa/0x110
[    9.064974]   ret_from_fork+0x27/0x50

....

Is there a fix or a revert that can be tested?

Thanks,

	Ingo



[Index of Archives]     [Linux Kernel]     [Kernel Development Newbies]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Hiking]     [Linux Kernel]     [Linux SCSI]