mirror of https://gitee.com/openkylin/linux.git
9f7406d6b5
With fast_io enabled, spinlock_irq is used for read/write operations,
thus leading to :
BUG: sleeping function called from invalid context at [snip]/ao-cec-g12a.c:379
in_atomic(): 1, irqs_disabled(): 128, pid: 1451, name: irq/14-ff800280
[snip]
Call trace:
dump_backtrace+0x0/0x180
show_stack+0x14/0x1c
dump_stack+0xa8/0xe0
___might_sleep+0xf4/0x104
__might_sleep+0x4c/0x80
meson_ao_cec_g12a_read+0x7c/0x164
regmap_read+0x16c/0x1b0
meson_ao_cec_g12a_irq_thread+0xcc/0x200
irq_thread_fn+0x2c/0x60
irq_thread+0x14c/0x1fc
kthread+0x11c/0x12c
ret_from_fork+0x10/0x18
Simply remove fast_io to use mutexes instead.
Fixes:
|
||
---|---|---|
.. | ||
Makefile | ||
ao-cec-g12a.c | ||
ao-cec.c |