Ho installato Ubuntu 13.10 su un MacBook Pro 10,1. Tuttavia, dopo l'installazione, il processo di kworker consuma oltre il 90% dell'utilizzo della CPU. Ho provato quanto segue:
- (Suggerito in questa risposta ) Eseguire
grep . -r /sys/firmware/acpi/interrupts/
per vedere se alcuni GPE hanno valori elevati. - (Suggerito in questa risposta ) Sotto
sudo -s
, eseguiecho l > /proc/sysrq-trigger
e leggi l'output indmesg
. - (Suggerito in questa risposta ) Eseguire
sudo perf record -g -a sleep 10
e leggere l'output inperf report
.
Per 1, gpe16
aveva un valore elevato e continuava a salire. Ho provato a disabilitare gpe16 come suggerito nella risposta e l'utilizzo della CPU di kworker è sceso allo 0,0%.
Per 2 (senza disabilitazione gpe16
), dmesg
non sono state visualizzate informazioni aggiuntive rispetto a quelle presenti all'avvio.
Per 3 (senza disabilitazione gpe16
), ha riportato quanto segue in rosso:
- 50.76% kworker/0:5 [kernel.kallsyms] [k] native_read_tsc
- native_read_tsc
- 64.72% delay_tsc
__const_udelay
+ gmux_index_wait_ready.isra.6
- 35.28% __const_udelay
+ gmux_index_wait_ready.isra.6
- 35.14% kworker/0:5 [kernel.kallsyms] [k] delay_tsc
- delay_tsc
- __const_udelay
- gmux_index_wait_ready.isra.6
- 59.84% gmux_index_write8
gmux_notify_handler
acpi_ev_notify_dispatch
acpi_os_execute_deferred
process_one_work
worker_thread
kthread
ret_from_fork
- 40.16% gmux_index_read8
gmux_notify_handler
acpi_ev_notify_dispatch
acpi_os_execute_deferred
process_one_work
worker_thread
kthread
ret_from_fork
Domande:
- Che cosa è
gpe16
? Come faccio a sapere che disabilitare questa interruzione per il bene di Kworker non avrà altre conseguenze? - Da quali informazioni è possibile ottenere
perf report
? C'è qualcosa da fare con il timestamp sul MacBook Pro?