148fc55fd0
There is a msleep with spin lock held during ehci pci suspend, which will cause kernel BUG: scheduling while atomic. Fix that. [ 184.139620] BUG: scheduling while atomic: kworker/u:11/416/0x00000002 [ 184.139632] 4 locks held by kworker/u:11/416: [ 184.139640] #0: (events_unbound){+.+.+.}, at: [<c104ddd4>] process_one_work+0x1b3/0x4cb [ 184.139669] #1: ((&entry->work)){+.+.+.}, at: [<c104ddd4>] process_one_work+0x1b3/0x4cb [ 184.139686] #2: (&__lockdep_no_validate__){+.+.+.}, at: [<c127cde3>] __device_suspend+0x2c/0x154 [ 184.139706] #3: (&(&ehci->lock)->rlock){-.-...}, at: [<c132f3d8>] ehci_pci_suspend+0x35/0x7b [ 184.139725] Modules linked in: serio_raw pegasus joydev mrst_gfx(C) battery [ 184.139748] irq event stamp: 52 [ 184.139753] hardirqs last enabled at (51): [<c14fdaac>] mutex_lock_nested+0x258/0x293 [ 184.139766] hardirqs last disabled at (52): [<c14fe7b4>] _raw_spin_lock_irqsave+0xf/0x3e [ 184.139777] softirqs last enabled at (0): [<c10371c1>] copy_process+0x3d2/0x109d [ 184.139789] softirqs last disabled at (0): [< (null)>] (null) [ 184.139802] Pid: 416, comm: kworker/u:11 Tainted: G C 2.6.37-6.3-adaptation-oaktrail #37 [ 184.139809] Call Trace: [ 184.139820] [<c102eeff>] __schedule_bug+0x5e/0x65 [ 184.139829] [<c14fbca5>] schedule+0xac/0xc4c [ 184.139840] [<c11d4845>] ? string+0x37/0x8b [ 184.139853] [<c1044f21>] ? lock_timer_base+0x1f/0x3e [ 184.139863] [<c14fe7da>] ? _raw_spin_lock_irqsave+0x35/0x3e [ 184.139876] [<c1061590>] ? trace_hardirqs_off+0xb/0xd [ 184.139885] [<c14fccdc>] schedule_timeout+0x283/0x2d9 [ 184.139896] [<c104516f>] ? process_timeout+0x0/0xa [ 184.139906] [<c14fcd47>] schedule_timeout_uninterruptible+0x15/0x17 [ 184.139916] [<c104566a>] msleep+0x10/0x16 [ 184.139926] [<c132f316>] ehci_adjust_port_wakeup_flags+0x69/0xf6 [ 184.139937] [<c132f3eb>] ehci_pci_suspend+0x48/0x7b [ 184.139946] [<c1326587>] suspend_common+0x52/0xbb [ 184.139956] [<c1326625>] hcd_pci_suspend+0x26/0x28 [ 184.139967] [<c11e7182>] pci_pm_suspend+0x5f/0xd0 [ 184.139976] [<c127ca3a>] pm_op+0x5d/0xf0 [ 184.139986] [<c127ceac>] __device_suspend+0xf5/0x154 [ 184.139996] [<c127d2c8>] async_suspend+0x16/0x3a [ 184.140006] [<c1058f54>] async_run_entry_fn+0x89/0x111 [ 184.140016] [<c104deb6>] process_one_work+0x295/0x4cb [ 184.140026] [<c1058ecb>] ? async_run_entry_fn+0x0/0x111 [ 184.140036] [<c104e3d0>] worker_thread+0x17f/0x298 [ 184.140045] [<c104e251>] ? worker_thread+0x0/0x298 [ 184.140055] [<c105277f>] kthread+0x64/0x69 [ 184.140064] [<c105271b>] ? kthread+0x0/0x69 [ 184.140075] [<c1002efa>] kernel_thread_helper+0x6/0x1a Signed-off-by: Yin Kangkai <kangkai.yin@intel.com> Acked-by: Alan Stern <stern@rowland.harvard.edu> CC: David Brownell <dbrownell@users.sourceforge.net> CC: stable@kernel.org Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> |
||
---|---|---|
.. | ||
whci | ||
ehci-atmel.c | ||
ehci-au1xxx.c | ||
ehci-cns3xxx.c | ||
ehci-dbg.c | ||
ehci-fsl.c | ||
ehci-fsl.h | ||
ehci-hcd.c | ||
ehci-hub.c | ||
ehci-ixp4xx.c | ||
ehci-lpm.c | ||
ehci-mem.c | ||
ehci-msm.c | ||
ehci-mxc.c | ||
ehci-octeon.c | ||
ehci-omap.c | ||
ehci-orion.c | ||
ehci-pci.c | ||
ehci-ppc-of.c | ||
ehci-ps3.c | ||
ehci-q.c | ||
ehci-sched.c | ||
ehci-sh.c | ||
ehci-spear.c | ||
ehci-vt8500.c | ||
ehci-w90x900.c | ||
ehci-xilinx-of.c | ||
ehci.h | ||
fhci-dbg.c | ||
fhci-hcd.c | ||
fhci-hub.c | ||
fhci-mem.c | ||
fhci-q.c | ||
fhci-sched.c | ||
fhci-tds.c | ||
fhci.h | ||
fsl-mph-dr-of.c | ||
hwa-hc.c | ||
imx21-dbg.c | ||
imx21-hcd.c | ||
imx21-hcd.h | ||
isp116x-hcd.c | ||
isp116x.h | ||
isp1362-hcd.c | ||
isp1362.h | ||
isp1760-hcd.c | ||
isp1760-hcd.h | ||
isp1760-if.c | ||
Kconfig | ||
Makefile | ||
octeon2-common.c | ||
ohci-at91.c | ||
ohci-au1xxx.c | ||
ohci-cns3xxx.c | ||
ohci-da8xx.c | ||
ohci-dbg.c | ||
ohci-ep93xx.c | ||
ohci-hcd.c | ||
ohci-hub.c | ||
ohci-jz4740.c | ||
ohci-lh7a404.c | ||
ohci-mem.c | ||
ohci-octeon.c | ||
ohci-omap.c | ||
ohci-omap3.c | ||
ohci-pci.c | ||
ohci-pnx4008.c | ||
ohci-pnx8550.c | ||
ohci-ppc-of.c | ||
ohci-ppc-soc.c | ||
ohci-ps3.c | ||
ohci-pxa27x.c | ||
ohci-q.c | ||
ohci-s3c2410.c | ||
ohci-sa1111.c | ||
ohci-sh.c | ||
ohci-sm501.c | ||
ohci-spear.c | ||
ohci-ssb.c | ||
ohci-tmio.c | ||
ohci.h | ||
oxu210hp-hcd.c | ||
oxu210hp.h | ||
pci-quirks.c | ||
pci-quirks.h | ||
r8a66597-hcd.c | ||
r8a66597.h | ||
sl811-hcd.c | ||
sl811.h | ||
sl811_cs.c | ||
u132-hcd.c | ||
uhci-debug.c | ||
uhci-hcd.c | ||
uhci-hcd.h | ||
uhci-hub.c | ||
uhci-q.c | ||
xhci-dbg.c | ||
xhci-ext-caps.h | ||
xhci-hub.c | ||
xhci-mem.c | ||
xhci-pci.c | ||
xhci-ring.c | ||
xhci.c | ||
xhci.h |