本の虫

著者:江添亮
GitHub pages: https://ezoeryou.github.io/blog/
Blogger: http://cpplover.blogspot.jp/
メール: boostcpp@gmail.com
Twitter: https://twitter.com/EzoeRyou
GitHub: https://github.com/EzoeRyou

アマゾンの江添のほしい物リストを著者に送るとブログ記事のネタになる

筆者にブログのネタになる品物を直接送りたい場合、住所をメールで質問してください。

kworker/kacpidのCPU使用率が高い問題に対処した

自宅内で持ち運んでカジュアルに使うための軽量な2-in-1タブレットの調子が最近おかしい。特に付属のキーボードを取り付けると挙動がおかしくなる。不思議に思ってtopを見ると、ibus-daemonとgnome-shellのCPU使用率を異様に高かった。

そこでとりあえずibus-daemonを止めてみることにした。

$ ibus exit

すると今度はkworker/kacpidというプロセスのCPU使用率が高いことが分かった。これを止めることはできない。調べるとこれはACPIの割り込みを処理しているらしく、ハードウェアの不具合かなにかで割り込みがやたらと起こっている可能性がある。早速割り込みを調べてみよう。

$ rgrep enabled /sys/firmware/acpi/interrupts/
/sys/firmware/acpi/interrupts/ff_pwr_btn:       0  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe66:      14  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe62:       0  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe50:    3457  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe09:  979302  EN     enabled      unmasked  
/sys/firmware/acpi/interrupts/ff_gbl_lock:       0  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe6F:       0  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe6D:     130  EN     enabled      unmasked
/sys/firmware/acpi/interrupts/gpe61:       2  EN     enabled      unmasked

これをみると、私の環境ではgpe09の割り込みが明らかに多いことが分かる。この割り込みをマスクすると問題は収まった。

$ sudo bash
# echo mask > /sys/firmware/acpi/interrupts/gpe09

しかしこれではリブートすると元に戻ってしまうので、crontab -eした上で

@reboot echo > /sys/firmware/acpi/interrupts/gpe09

このように記述した。

そしてすっかり忘れていたibus-daemonを起動した。

$ ibus-daemon -d -x

ただ、根本的な問題としておそらくハードウェア障害だと思うので、そろそろ新しい2-in-1ラップトップを買わなければならない。今使っているのはEve-Vというなかなかハイスペックな2-in-1タブレットだが、流石に3年前の製品なのでそろそろ古い。しかし、2-in-1タブレットでここまでのスペックを持っている製品はない。。Eve-Vの後継機がもうすぐ出るらしいので、それを買おうかと思っている。