SVR4.0 は、拡張 I/O レジスタ(0x3FF 以降)をアクセスするプログラムの処理に 関してバグがあります。しかし、S3 や IBM 8514/A のようなチップを使用した ビデオカードはそれらのレジスタを使用します。このバグを引き起こすボードを サポートするため、XFree86 ではこの問題をフィックスするカーネルパッチを 作成し、インストール、アンインストールができるスクリプトを用意しました。 S3, 8514, Mach8, Mach32, P9000, AGX, W32 のサーバを使用する場合は、この パッチをインストールする必要があります。
Dell 2.2 は、Thomas Roell が Dell に勤めていた頃、このバグを見つけて フィックスしたので、パッチを当てる必要はないことが分かっています。 Microport も 4.0 v4.2 リリースでフィックスしています。SVR4.2 も、 USL がこの問題をフィックスしたので、パッチは必要ありません。
パッチは、ソースツリー上では xc/programs/Xserver/hw/xfree86/etc
、
バイナリ上では /usr/X11R6/lib/X11/etc
のディレクトリの下にあります。
インストールするスクリプトは `svr4_patch'、アンインストールするスクリプトは
`svr4_rem_pch' です。パッチが当てられる対象のファイルは、
/etc/conf/pack.d/kernel/os.o
です。パッチのスクリプトは、パッチを
当てる前にバグの存在を確認し、パッチ当てに成功したか失敗したかを知らせます。
`svr4_patch' スクリプトは、もちろん root 権限で実行して下さい。オリジナルの
os.o
、パッチを当てるプログラム、削除するスクリプトのコピーは、
/etc/conf/pack.d/kernel/.xfree86
のディレクトリの下に保存されます。
我々がこの問題に対する簡単な解決策を見い出すのを手伝い、その情報をリリース する許可を与えてくれた Microport の John M. Sully に感謝します。