Re: usb: chipidea: udc: BUG: sleeping function called from invalid context

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

 



On 20-03-04 19:10:08, Dmitry Osipenko wrote:
> Hello,
> 
> I was trying out today's linux-next-20200304 and noticed this splat in KMSG:
> 
> [    1.161244] BUG: sleeping function called from invalid context at
> drivers/base/power/runtime.c:1075
> [    1.161393] in_atomic(): 1, irqs_disabled(): 128, non_block: 0, pid:
> 37, name: kworker/u8:1
> [    1.161481] CPU: 1 PID: 37 Comm: kworker/u8:1 Not tainted
> 5.6.0-rc4-next-20200304-00181-gbebfd2a5be98 #1588
> [    1.161616] Hardware name: NVIDIA Tegra SoC (Flattened Device Tree)
> [    1.161769] Workqueue: ci_otg ci_otg_work
> [    1.161882] [<c010e8bd>] (unwind_backtrace) from [<c010a315>]
> (show_stack+0x11/0x14)
> [    1.162035] [<c010a315>] (show_stack) from [<c0987d29>]
> (dump_stack+0x85/0x94)
> [    1.162132] [<c0987d29>] (dump_stack) from [<c013e77f>]
> (___might_sleep+0xeb/0x118)
> [    1.162281] [<c013e77f>] (___might_sleep) from [<c052fa1d>]
> (__pm_runtime_resume+0x75/0x78)
> [    1.162427] [<c052fa1d>] (__pm_runtime_resume) from [<c0627a33>]
> (ci_udc_pullup+0x23/0x74)
> [    1.162575] [<c0627a33>] (ci_udc_pullup) from [<c062fb93>]
> (usb_gadget_connect+0x2b/0xcc)
> [    1.162665] [<c062fb93>] (usb_gadget_connect) from [<c062769d>]
> (ci_hdrc_gadget_connect+0x59/0x104)
> [    1.162807] [<c062769d>] (ci_hdrc_gadget_connect) from [<c062778b>]
> (ci_udc_vbus_session+0x43/0x48)
> [    1.162949] [<c062778b>] (ci_udc_vbus_session) from [<c062f997>]
> (usb_gadget_vbus_connect+0x17/0x9c)
> [    1.163089] [<c062f997>] (usb_gadget_vbus_connect) from [<c062634d>]
> (ci_otg_work+0xbd/0x128)
> [    1.163245] [<c062634d>] (ci_otg_work) from [<c0134719>]
> (process_one_work+0x149/0x404)
> [    1.163335] [<c0134719>] (process_one_work) from [<c0134acb>]
> (worker_thread+0xf7/0x3bc)
> [    1.163479] [<c0134acb>] (worker_thread) from [<c0139433>]
> (kthread+0xf3/0x118)
> [    1.163621] [<c0139433>] (kthread) from [<c01010bd>]
> (ret_from_fork+0x11/0x34)
> 
> I haven't tried to figure out what change causes this problem, it didn't
> happen using next-20200218. Please take a look, thanks in advance.

Dmitry, thanks for reporting. I haven't met that issue, it maybe I
enable runtime pm, but you have not? So I don't trigger
"dev->power.runtime_status != RPM_ACTIVE" condition below

	might_sleep_if(!(rpmflags & RPM_ASYNC) && !dev->power.irq_safe &&
			dev->power.runtime_status != RPM_ACTIVE);

I send the fix patch, but git send-email seems doesn't add auto cc
according to reported-by tag, so you are not at cc list. Would you
please have a test?

-- 

Thanks,
Peter Chen



[Index of Archives]     [ARM Kernel]     [Linux ARM]     [Linux ARM MSM]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux