gnome-shellがFail Safeモードになる
"ATI Radeon HD 3450" を使っているのですが、gnome-shellがFail Safeになる。
これは、gnome-session-3.1.92付属のヘルパーコマンドで調査されている。
$ /usr/libexec/gnome-session-check-accelerated-helper
gnome-session-is-accelerated: No hardware 3D support.
このような出力ではハードウェアサポートがなされていないことになる。
ソースを見ると、
/* The current Mesa software GL renderer string is
* "Software Rasterizer".
* Gallium has softpipe and llvmpipe. */
こんなのが書かれている。
GNOME 3.2 で新たに導入されたデバッガ nemiver を使ってデバッグしてみる。
$ nemiver /usr/libexec/gnome-session-check-accelerated-helper &
renderer = (const char *) glGetString (GL_RENDERER);
これで得られる文字列 render は、"Gallium 0.4 on llvmpipe" になっている。これってsoftpipe じゃなくて、llvmpipe なんだよな〜。なので、llvmpipeという文字列を探している、
strcasestr (renderer, "llvmpipe") != NULL
という判定が true になってしまうため、サポートされていないと検出される。
==手元でこの判定を外して調査してみる予定。問題がなければ commit するけど、不具合が出たら巻き戻します。== 不具合発生なので、software rendering になっている模様。