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 になっている模様。