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

Bug#966703: linux-image-4.19.0-10-amd64: kworker process with permanent high CPU load



Hi Dirk,

On Tue, Aug 11, 2020 at 12:58:15PM +0200, Dirk Kostrewa wrote:
> Hi Salavatore,
> 
> as an additional control, I have completely uninstalled the nvidia graphics
> driver and repeated the kworker observations using the nouveau graphics
> driver with the kernel 4.19.0-10-amd64. This time, there are even two
> kworker processes constantly running with high CPU load:
> 
> $ top
> top - 12:37:20 up 10 min,  4 users,  load average: 2.79, 2.54, 1.56
> Tasks: 197 total,   3 running, 194 sleeping,   0 stopped,   0 zombie
> %Cpu(s):  0.0 us, 24.2 sy,  0.0 ni, 74.2 id,  0.0 wa, 0.0 hi,  1.6 si,  0.0
> st
> MiB Mem :  15889.4 total,  13964.7 free,    626.8 used, 1297.9 buff/cache
> MiB Swap:      0.0 total,      0.0 free,      0.0 used. 14849.1 avail Mem
> 
>   PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND
>   164 root      20   0       0      0      0 R  80.0 0.0   8:41.67
> kworker/6:2+pm
>   455 root      20   0       0      0      0 R  80.0 0.0   8:28.23
> kworker/2:2+pm
>    22 root      20   0       0      0      0 S  20.0 0.0   2:14.82
> ksoftirqd/2
>    42 root      20   0       0      0      0 S  20.0 0.0   2:08.67
> ksoftirqd/6
>     1 root      20   0  169644  10212   7796 S   0.0 0.1   0:01.52 systemd
>     2 root      20   0       0      0      0 S   0.0 0.0   0:00.00 kthreadd
>     3 root       0 -20       0      0      0 I   0.0 0.0   0:00.00 rcu_gp
>     4 root       0 -20       0      0      0 I   0.0 0.0   0:00.00
> rcu_par_gp
>     6 root       0 -20       0      0      0 I   0.0 0.0   0:00.00
> kworker/0:0H-kblockd
>     7 root      20   0       0      0      0 I   0.0 0.0   0:00.05
> kworker/u16:0-event+
> 
> The stacks of the two kworker processes show the same output:
> 
> [<0>] 0xffffffffffffffff
> 
> I have appended the top 5000 lines tracing as a compressed ascii file
> out-cut.txt,gz and the dmesg output as compressed ascii file dmesg.txt.gz.
> 
> I hope, this helps to find out where the problem with the high CPU load of
> the kworker processes come from.

Thanks this is very helpful.

I suspect what you are seeing is an issue with the usb hubport present
before but now uncovered due to the upstream change e9fb08d617bf
("xhci: prevent bus suspend if a roothub port detected a over-current
condition")[1], which was as well backported to v4.19.y in 4.19.119.

Can you add some dynamic debugging on the 'drivers/usb/'[2] ideally at
boot time. On runtime it is 

# echo 'file drivers/usb/* +p;' > /sys/kernel/debug/dynamic_debug/control

or as kernel parameter to have enable the debug messages at boot time
already:

dyndbg="file drivers/usb/* +p;"

Can you attach the dmesg with the enabled debugging?

Regards,
Salvatore

 [1] https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e9fb08d617bfae5471d902112667d0eeb9dee3c4
 [2] https://www.kernel.org/doc/html/latest/admin-guide/dynamic-debug-howto.html


Reply to: