ATI 純正ドライバ

グラフィックドライバの不具合

突然グラフィックドライバが機能しなくなった。起動時にXがエラーを起こす。/etc/X11/xorg.conf を編集して、ATI純正のfglrxからvesaに変えて立ち上げることはできた。何が原因か分からない。直前にカーネルパッケージのアップグレードしたかな?

ドライバがコンパイルできない

新しいATI純正ドライバを入れてみることにした。以前の記事と同様に、インストールしてみる。

ところが、コンパイルが出来ない。インストールは成功したように見えるのだが、実際にはコンパイルに失敗している。コンパイルしなくてもドライバは動作するが、特に画面スクロールが相当に遅い。

情報によると、原因は kcl_ioctl.c というファイルにあるようで、以下のように

196c196
<     return compat_alloc_user_space(size);
---
>     return arch_compat_alloc_user_space(size);

196行目の関数名を変更すれば良いのだが、前は普通にコンパイルできたはずなんだが。

原因が判明した

今朝になって原因が判明した。当初の起動時のエラーはカーネル

linux-image-2.6.32-bpo.5-amd64          2.6.32-23~bpo50+1

にアップデートされてからのようだ。おそらく、2.6.32-23~bpo50+1 と 2.6.32-22~bpo50+1 の間で何かあったのだ。

何かについても推測がついた。linux-headers-2.6.32-bpo.5-common の 2.6.32-15~bpo50+1 が残っていたので確認したら、asm/compat.h で compat_alloc_user_space() がinline定義されているのに対し、2.6.32-23~bpo50+1 では arch_compat_alloc_user_space() という名前に変わっていた。