kworkerのCPU使用率が高すぎるのでなんとかした
題名の通りkworkerのCPU使用率が高いのをなんとかした記録。OSはCentOS 7.2
ぐぐってみたところ
Linuxで一つのコアのCPU利用率が異様に高いのを何とかする - Qiitaや
ubuntuでkworkerのcpu使用率がやたら高い - Qiitaが
ヒットするが、こちらの環境とはマッチしないみたい。
覚えたてのperfを使ってみます。
Samples: 44K of event 'cycles', Event count (approx.): 40358935514 Children Self Command Shared Object Symbol + 70.47% 0.00% kworker/2:2 [kernel.kallsyms] [k] kthread + 70.47% 0.00% kworker/2:2 [kernel.kallsyms] [k] ret_from_fork + 70.47% 0.00% kworker/2:2 [kernel.kallsyms] [k] worker_thread + 70.44% 0.07% kworker/2:2 [kernel.kallsyms] [k] process_one_work + 69.37% 0.05% kworker/2:2 [kernel.kallsyms] [k] rpm_idle + 69.09% 0.08% kworker/2:2 [kernel.kallsyms] [k] rpm_suspend + 68.98% 0.03% kworker/2:2 [kernel.kallsyms] [k] pm_runtime_work + 68.83% 0.04% kworker/2:2 [kernel.kallsyms] [k] __rpm_callback + 68.78% 0.01% kworker/2:2 [kernel.kallsyms] [k] usb_runtime_idle + 68.74% 0.01% kworker/2:2 [kernel.kallsyms] [k] __pm_runtime_suspend + 68.54% 0.00% kworker/2:2 [kernel.kallsyms] [k] rpm_callback + 68.49% 0.01% kworker/2:2 [kernel.kallsyms] [k] usb_runtime_suspend + 68.46% 0.03% kworker/2:2 [kernel.kallsyms] [k] usb_suspend_both + 66.53% 0.01% kworker/2:2 [kernel.kallsyms] [k] usb_resume_interface.isra.5 + 66.53% 0.01% kworker/2:2 [kernel.kallsyms] [k] hub_resume + 66.49% 0.42% kworker/2:2 [kernel.kallsyms] [k] hub_activate + 65.50% 0.28% kworker/2:2 [kernel.kallsyms] [k] hub_port_status + 64.32% 0.28% kworker/2:2 [kernel.kallsyms] [k] usb_control_msg + 61.81% 0.22% kworker/2:2 [kernel.kallsyms] [k] usb_start_wait_urb + 56.04% 0.07% kworker/2:2 [kernel.kallsyms] [k] usb_submit_urb + 55.97% 0.54% kworker/2:2 [kernel.kallsyms] [k] usb_submit_urb.part.5 + 54.46% 1.71% kworker/2:2 [kernel.kallsyms] [k] usb_hcd_submit_urb + 40.82% 39.99% kworker/2:2 [kernel.kallsyms] [k] xhci_hub_control + 16.33% 0.00% ksoftirqd/2 [kernel.kallsyms] [k] kthread + 16.33% 0.00% ksoftirqd/2 [kernel.kallsyms] [k] ret_from_fork + 15.88% 1.32% ksoftirqd/2 [kernel.kallsyms] [k] smpboot_thread_fn
xHCIが悪さをしているようです。
USBをリセットしてみます。
[Reset USB 2.0 (ehci) & USB 3.0 (xhci) Without Reboot in Linux Kernel] (http://www.ubuntubuzz.com/2016/06/reset-usb-20-ehci-usb-30-xhci-without-reboot-linux.html)
使用率が低くなりました。よかったね。