Excessivo uso da CPU pelo processo kworker/0:2+kac

Bom dia.

Estou em uma luta contra o excesso de uso da CPU no Linux Mint 19.3 Tricia.

Tem um núcleo que nunca baixa de 60% de uso, mesmo com nenhum programa executando.
Quando abro o chrome, vai a 100% e não baixa mais…
Vi uma solução com o arquivo coredump, e esse resolveu em parte quando alterei para sotorage=none.

Agora estou com esse problema de excesso de uso da CPU por conta do processo kworker/0:2+kac.

E ele chega a 100% de um núcleo quando o notebook volte de uma “suspensão”.

Isso é muito chato, pois o note fica com o fan “bufando” mesmo sem processos pesados executando.

Alguém tem dica para resolver isso?

Segue umas imagens do top.

kworker 1

Os kworker são processos criados pelos drivers. Para descobrir suspeitos em potencial, há o comando perf, que pode ser rodado da seguinte forma:

  1. Instale o perf.
  2. Rode sudo perf record. Deixe rodar por um tempo (10-20 s) e aperte Ctrl + C para gerar o relatório.
  3. Rode sudo perf report. Por padrão, vem em ordem decrescente de “peso”. Primeira coluna é o “peso”, a segunda nome do processo (no caso, o kworker tal), e a terceira o driver que o causou. É uma interface gráfica, ele responde às setas e ao mouse mesmo estando no terminal.

Como exemplo, eis alguns kworkers do meu PC:

     0.04%  kworker/u16:0-e  [kernel.vmlinux]                   [k] update_blocked_averages
     0.01%  kworker/u16:0-e  [i915]                             [k] intel_atomic_commit_tail
     0.00%  kworker/u17:0-r  [iwlwifi]                          [k] iwl_pcie_rx_allocator_work
1 curtida

Obrigado pelo retorno Capezotte

Abaixo segue um print do que eu consegui seguindo esse processo.

Meu Linux Mint acabou de fazer uma atualização de Kernel. Não sei se isso influenciou em algo… Me parece que não pois continua pesando nos núcelos da CPU.

O que pode ser?

Capezotte, um “paliativo” que tenho utilizado é desabilitar esse processo com:

sudo su
echo "disable" > /sys/firmware/acpi/interrupts/gpe11

Só que toda vez que reinicio tenho que entrar no terminal e colocar isso…
Alem de eu não saber se desabilitando esse processo eu não estou desabilitando junto algo importante do sistema.

Resumidamente, os ACPI Interrupts gerenciam a energia do sistema. Se a suspensão, hibernação e a bateria continuarem funcionando normalmente, nada de importante foi perdido.

Você pode automatizar isso da seguinte forma:

  1. Crie um arquivo por meio de sudo xed /etc/systemd/system/disable-gpe11.service. O conteúdo será o seguinte:
[Unit]
Description=Desabilitar o interrupt gpe11

[Service]
ExecStart=/bin/sh -c 'echo "disable" > /sys/firmware/acpi/interrupts/gpe11'

[Install]
WantedBy=multi-user.target
  1. Ative com sudo systemctl enable --now disable-gpe11.service.
3 curtidas

Show de bola!
Fiz o passo a passo e reiniciei o notebook…
Tudo funcionando perfeitamente!

Todos as CPU estão sincronizadinhas sem nenhum processo comendo CPU.

Estou começando no Linux e já estava com receio de ter que voltar para o Win10 por conta disso.

Muito Obrigado Capezotte!! Abraço!

3 curtidas