Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
0
Help us understand the problem. What is going on with this article?
@neutron63zf

wpa_supplicantが原因でubuntuでスリープができないときの対処法

More than 1 year has passed since last update.

対象者

ubuntuの16や18でwifiに繋いだ状態でスリープをしようとしてsystemctl suspendしたり、普通にサスペンドをGUIで選択したときに数十秒たって結局画面が再起動してスリープできないよーっていう症状です。

原因はいろいろ考えられますが、ここではjournalctlというコマンドでシステムのログをみて、Failed to start Suspendや、Dependency failed for Suspend.というエラーログを見つけ、そしてそのエラーメッセージの近くで以下のようなwpa_supplicant由来のエラーを見つけた方向けに記事を書いています。

 5月 23 19:11:51 nkowne63 kernel: Freezing of tasks failed after 20.007 seconds (11 tasks refusing to freeze, wq_busy=0):
 5月 23 19:11:51 nkowne63 kernel: wpa_supplicant  D    0  1089      1 0x00000004
 5月 23 19:11:51 nkowne63 kernel: Call Trace:
 5月 23 19:11:51 nkowne63 kernel:  __schedule+0x297/0x8b0
 5月 23 19:11:51 nkowne63 kernel:  schedule+0x2c/0x80
 5月 23 19:11:51 nkowne63 kernel:  schedule_timeout+0x15d/0x350
 5月 23 19:11:51 nkowne63 kernel:  ? __next_timer_interrupt+0xe0/0xe0
 5月 23 19:11:51 nkowne63 kernel:  msleep+0x2d/0x40
 5月 23 19:11:51 nkowne63 kernel:  ath10k_pci_hif_stop+0x63/0xc0 [ath10k_pci]
 5月 23 19:11:51 nkowne63 kernel:  ath10k_core_stop+0x4b/0x70 [ath10k_core]
 5月 23 19:11:51 nkowne63 kernel:  ath10k_halt+0x10c/0x170 [ath10k_core]
 5月 23 19:11:51 nkowne63 kernel:  ath10k_stop+0x39/0x80 [ath10k_core]
 5月 23 19:11:51 nkowne63 kernel:  drv_stop+0x39/0x100 [mac80211]
 5月 23 19:11:51 nkowne63 kernel:  ieee80211_stop_device+0x43/0x50 [mac80211]
...

どういうことか

ざっくり解説するとubuntuではスリープするときにsystemdを用いて、systemd-suspend.serviceなどの複数ファイルに従っていろいろなサービスを終了、もしくはスリープしていたりします。systemd-suspend.serviceについて詳しくはここをご覧ください。
wpa_supplicantはwifi接続を司っているようで、これが死ぬとサスペンドから復帰したときにnetwork-managerが起動せずネットに有線ですら繋がらなくなる。ひどいときにはsudoすらできなくなるということが起きます。

対処法

※以下の対処法は2018年5月24日時点での情報です。実行の際には手順をよく理解して、自己責任で行ってください。

wpa_supplicantが死んでいるので、そいつをどうにかすればいいわけなのですが、apt-getなどで入れようとしても「最新版です」だとか「見つかりません」だとか出てくるので、そして何より最新版で、かつパッチを当てなければバグは解決しないので自分でビルドする必要があります。

ということで、linux from scratchのページに従って最新版のビルドとインストールを行ってください。僕の場合、ubuntu16,18いづれもこの解決策で直すことができました。

ビルドとインストールといっても、基本的にはそのページに従うだけで数分で行けてしまいます。ただ、必要なライブラリが足りずにビルドに失敗することがありますので、その際はそのライブラリをなんとかしてインストールしてください。

では、快適なubuntuライフを。

0
Help us understand the problem. What is going on with this article?
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ventus
スポーツ選手の電子トレーディングカードサービスwhooop!を開発・運営するスタートアップ

Comments

No comments
Sign up for free and join this conversation.
Sign Up
If you already have a Qiita account Login
0
Help us understand the problem. What is going on with this article?