[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1526459203.25281.2.camel@suse.com>
Date: Wed, 16 May 2018 10:26:43 +0200
From: Oliver Neukum <oneukum@...e.com>
To: Hayes Wang <hayeswang@...ltek.com>
Cc: "netdev@...r.kernel.org" <netdev@...r.kernel.org>
Subject: Re: Hangs in r8152 connected to power management in kernels at
least up v4.17-rc4
Am Mittwoch, den 16.05.2018, 03:37 +0000 schrieb Hayes Wang:
> Oliver Neukum [mailto:oneukum@...e.com]
> >
> > Hi,
> >
> > I got reports about hangs with this trace:
> >
> > May 13 01:36:55 neroon kernel: INFO: task kworker/0:0:4 blocked for more
> > than 60 seconds.
> > May 13 01:36:55 neroon kernel: Tainted: G U
> > 4.17.0-rc4-1.g8257a00-vanilla #1
> > May 13 01:36:55 neroon kernel: "echo 0 >
> > /proc/sys/kernel/hung_task_timeout_secs" disables this message.
> > May 13 01:36:55 neroon kernel: kworker/0:0 D 0 4 2
> > 0x80000000
> > May 13 01:36:55 neroon kernel: Workqueue: events rtl_work_func_t [r8152]
> > May 13 01:36:55 neroon kernel: Call Trace:
> > May 13 01:36:55 neroon kernel: ? __schedule+0x289/0x880
> > May 13 01:36:55 neroon kernel: schedule+0x2f/0x90
> > May 13 01:36:55 neroon kernel: rpm_resume+0xf9/0x7a0
> > May 13 01:36:55 neroon kernel: ? wait_woken+0x80/0x80
> > May 13 01:36:55 neroon kernel: rpm_resume+0x547/0x7a0
> > May 13 01:36:55 neroon kernel: ? __switch_to_asm+0x40/0x70
> > May 13 01:36:55 neroon kernel: ? __switch_to_asm+0x34/0x70
> > May 13 01:36:55 neroon kernel: ? __switch_to_asm+0x40/0x70
> > May 13 01:36:55 neroon kernel: ? __switch_to_asm+0x34/0x70
> > May 13 01:36:55 neroon kernel: ? __switch_to_asm+0x40/0x70
> > May 13 01:36:55 neroon kernel: __pm_runtime_resume+0x3a/0x50
> > May 13 01:36:55 neroon kernel: usb_autopm_get_interface+0x1d/0x50 [usbcore]
>
> Would usb_autopm_get_interface() take a long time?
> The driver would wake the device if it has suspended.
> I have no idea about how usb_autopm_get_interface() works, so I don't know how to help.
Hi,
it basically calls r8152_resume() and makes a control request to the
hub. I think we are spinning in rtl8152_runtime_resume(), but where?
It has a lot of NAPI stuff. Any suggestions on how to instrument or
trace this?
Regards
Oliver
Powered by blists - more mailing lists