[Letux-kernel] as5013 is crying

Andreas Kemnade andreas at kemnade.info
Mon Dec 10 20:21:09 CET 2018


On Fri, 30 Nov 2018 21:13:34 +0100
"H. Nikolaus Schaller" <hns at goldelico.com> wrote:

> The real error seems to be:
> > BUG: sleeping function called from invalid context at /home/andi/gta04/pyra-kernel/kernel/locking/mutex.c:908
> > in_atomic(): 1, irqs_disabled(): 0, pid: 1318, name: udevd
> >  #0: (ptrval) (&dev->mutex){....}, at: __driver_attach+0x7c/0xd0  
> No idea why this happens... IMHO it is safe to use mutex during probe. Isn't it?
You just have forgotten the real interesting line.

> [    9.208456] Preemption disabled at:  
> [    9.208468] [<c084e824>] __radix_tree_preload.constprop.7+0x10/0xe8

So the reason is the radix tree here. We are only allowed to handle the
mutex outside/around of the radix tree operations not between them. So
probably before the idr_preload() the mutex would be fine.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 833 bytes
Desc: OpenPGP digital signature
URL: <http://lists.goldelico.com/pipermail/letux-kernel/attachments/20181210/a4c81377/attachment.asc>

More information about the Letux-kernel mailing list