先日、
"firefoxでスクロール時に黒いブロックが出る (Small black box corruption in firefox) [1]"ときの、対策を書いた。その内容に関して追記。解決策として、以下2つを挙げた。
1. SNAの代わりにUXAを使う。
[2],
[3]
2. ビデオドライバ(xf86-video-intel)をgitのバージョンにする。
[3]
それぞれの策に問題点等見つかったので、その内容についての紹介。
解決策1
SNAを切ると、ビデオドライバの設定で有効にしているティアリングを防ぐオプションが無効になってしまう。このオプションは以下のようにTearFreeで設定している。
/etc/X11/xorg.conf.d/20-intel.conf
Section "Device"
Identifier "Intel Graphics"
Driver "intel"
Option "AccelMethod" "sna"
Option "TearFree" "true"
EndSection
動画再生中にティアリングが起きてしまうので、このオプションをつけていた。SNAからUXAに切り替えたことで、TearFreeが無効になってしまうことに気づき、結局、UXAに切り替えない方法を模索した。
解決策2
解決策2は、SNAを有効にしたままxf86-video-intelをgitバージョンにするものであった。この方法を試したところ、黒いブロックは消えたように思えた。しかし、ウィンドウのバーにノイズっぽく横線が入ったり、一部のページでは黒いブロックが出現することがわかった。
結局のところ現在は、初期の状態に戻してしまった。すなわち、ビデオドライバはgitバージョンから公式バージョンに。また、ビデオドライバのオプションはSNAを有効にしている。この状態だと、また、黒いブロックとウィンドウのタイトルバーに横線は入ってしまう。時間が経てば治るだろうか。
参考:
[1]
http://archlinux-blogger.blogspot.jp/2013/09/firefox-small-black-box-corruption-in.html
[2]
https://bugs.freedesktop.org/show_bug.cgi?id=68410
[3]
https://bbs.archlinux.org/viewtopic.php?id=169449