laughk / archlinux-note

普段使っている ArchLinux に関するメモ置き場です
5 stars 0 forks source link

HDMIで外部ディスプレイを接続すると固まる #11

Closed laughk closed 8 years ago

laughk commented 8 years ago

起動中にHDMIで外部ディスプレイを接続したらシステム全体が固まってうんともすんとも言わなくなってしまった。また、HDMIケーブルを接続したまま起動を試みたが、GDMの画面までは行けるもののログインすると真っ暗になってなにも表示されなくなった。


ログ

journalctl してみたら以下のようなログを発見

 4月 30 21:22:51 cherry-blossom kernel: brcmfmac: brcmf_inetaddr_changed: fail to get arp ip table err:-23
laughk commented 8 years ago

ログをそのままぐぐってみるとほぼ同じ症状の報告があった

laughk commented 8 years ago

上記リンク先にあるとおりカーネルパラメータを追加して起動すると確かに固まらなくなった。

/boot/loader/entries/arch.conf

options        root=/dev/nvme0n1p6 rw i8042.nomux=1 i915.enable_rc6=0 

ただし、本体側のディスプレイにマウスポインタがあるときに本体側が真っ暗になってしまう状況が発生している。

laughk commented 8 years ago

ビデオドライバが入ってなかったのでインストール

$ yaourt -S xf86-video-intel                             
依存関係を解決しています...
衝突するパッケージがないか確認しています...

パッケージ (2) libxvmc-1.0.9-1  xf86-video-intel-1:2.99.917+636+g562ae1f-1

合計ダウンロード容量:  0.67 MiB
合計インストール容量:  2.32 MiB

:: インストールを行いますか? [Y/n] Y
:: パッケージを取得します...
 libxvmc-1.0.9-1-x86_64    20.2 KiB   403K/s 00:00 [######################] 100%
 xf86-video-intel-1:...   669.0 KiB   635K/s 00:01 [######################] 100%
(2/2) キーリングのキーを確認                       [######################] 100%
(2/2) パッケージの整合性をチェック                 [######################] 100%
(2/2) パッケージファイルのロード                   [######################] 100%
(2/2) ファイルの衝突をチェック                     [######################] 100%
(2/2) 空き容量を確認                               [######################] 100%
:: パッケージの変更を処理しています...
(1/2) インストール libxvmc                         [######################] 100%
(2/2) インストール xf86-video-intel                [######################] 100%
>>> This driver uses SNA as the default acceleration method. You can try
    falling back to UXA if you run into trouble. To do so, save a file with
    the following content as /etc/X11/xorg.conf.d/20-intel.conf :
      Section "Device"
        Identifier  "Intel Graphics"
        Driver      "intel"
        Option      "AccelMethod"  "uxa"
        #Option      "AccelMethod"  "sna"
      EndSection
xf86-video-intel の提案パッケージ
    libxrandr: for intel-virtual-output [インストール済み]
    libxinerama: for intel-virtual-output [インストール済み]
    libxcursor: for intel-virtual-output [インストール済み]
    libxtst: for intel-virtual-output [インストール済み]
    libxss: for intel-virtual-output [インストール済み]
laughk commented 8 years ago

-- この時点では特に挙動変わらず --

laughk commented 8 years ago

Arch Wiki に XPS15 に関するページがあった。

特にGrapics の冒頭の以下

By default, both Intel and NVidia cards are active, which can consume a lot of power. Using the Intel-only setup below, you can reduce your battery usage due to disabling the Nvidia card. The Intel and Nvidia setup describes how to utilize both cards and save power using Bumblebee.

雑に解釈するとデフォルトだと不要なNVidiaのグラフィックカードまで有効になってしまい無駄に電力を消費してしまうので intel のみにしておきましょう。 ということっぽいのでやってみる。


acpi_call は入ってないのでインストール

$ yaourt -S acpi_call

test_off.sh の中身が不明なので、ひとまずスルーでモジュールだけロード。

sudo modprobe acpi_call

m11xr2.sh off を実行。2016-04-30時点ではWikiのパスとは違う場所にあった。

$ find /usr/share/acpi_call/ -name "*.sh"
/usr/share/acpi_call/examples/turn_off_gpu.sh
/usr/share/acpi_call/examples/m11xr2.sh
/usr/share/acpi_call/examples/dellL702X.sh
/usr/share/acpi_call/examples/asus1215n.sh

実行。エラーは出ているがこの時点でHDMIで外部ディスプレイを接続しても固まらず、 実機のディスプレイにマウスカーソルを持ってきてもブラックアウトしなくなった。 (mx11xr2.shが起因で起こったことではないっぽい)

$ sudo  /usr/share/acpi_call/examples/m11xr2.sh off
NVOP Error: AE_NOT_FOUND
_PS3 Error: AE_NOT_FOUND
laughk commented 8 years ago

rc.local に追記して起動時に確実に処理してもらう

laughk/dell-xps15-9550/issues/12 で /etc/rc.local は使えるようになった(はず!)なので以下を追記しておく

$ cat /etc/rc.local 
modprobe acpi_call
/usr/share/acpi_call/examples/m11xr2.sh off
laughk commented 8 years ago

ブラックアウトする結局原因良くわからず。

https://github.com/laughk/dell-xps15-9550/issues/11#issuecomment-215964237 ここのあたりで行けそうかな?とも思ったが確実な回避策とは行かないようだった。

一応暫定回避策だけはそれっぽそうなのを見つけたので記載しておくと

のいずれかをやった場合はなぜか普通にマルチディスプレイで使うことができた。

laughk commented 8 years ago

とはいえこのIssueの目的「HDMIで外部ディスプレイを接続すると固まるの解決」は https://github.com/laughk/dell-xps15-9550/issues/11#issuecomment-215961548 の時点で達成できているので閉じる