ATI 的显卡驱动前几天释出了 9.6 版,该版本相对前一版本,有以下改进(来自 Linuxtoy ):

  • 支持 SLED/SLED 11 和 RHEL 4.8 操作系统
  • MultiView 支持

当然还有很多 BUG 修正,这里不一一列举。

值得注意的是,此版本仍然没有带来对 2.6.29 以上内核的支持,这是 ATI 自 9.4 版以来第三次对新版本内核无视,当然以前也有过很多先例,可以说,ATI 的显卡驱动对 Linux 用户来说就是个彻头彻尾的冷笑话!奉劝各位 Linux 用户以后千万别买 A 卡,爱买什么买什么吧!

下面说一下网友研究出的关于在 2.6.30 版内核上运行 fglrx 9.6 的方法,2.6.29 版内核可以用 AUR 上的那个软件包。

网友原版的方法参见 Ubuntu 中文论坛 ,这里说的是在 Arch Linux 上的具体操作方法。

  1. 更新 ABS,从 /var/abs 中找到 testing 中的 kernel26 这个文件夹,复制到 ~/kernel26
  2. Refresh your ABS tree, and copy /var/abs/testing/kernel26 to ~/kernel26 or somewhere.
  3. 把以下内容保存为 ~/kernel26/fglrx.diff
  4. Save the text below to ~/kernel26/fglrx.diff.
diff --git linux-2.6.30/arch/x86/mm/tlb.c linux-2.6.30/arch/x86/mm/tlb.c
index 61ddfa0..3d26c0b 100644
--- linux-2.6.30/arch/x86/mm/tlb.c
+++ linux-2.6.30/arch/x86/mm/tlb.c
*************** void flush_tlb_page(struct vm_area_struc
*** 274,279 ****
--- 274,280 ----preempt_enable();
  }
+ EXPORT_SYMBOL(flush_tlb_page);static void do_flush_tlb_all(void *info)
  {
  1. 修改 PKGBUILD,添加 fglrx.diff 这个文件,并且在原来的 patch 那行下添加下面一行:
  2. Add the file fglrx.diff to PKGBUILD, and add a new line below the exsiting patch line:
$ patch -Np1 -i ${srcdir}/fglrx.diff || return 1
  1. 运行 makepkg,等待,然后用 pacman -U 安装。
  2. Run makepkg. After a long time, use ‘pacman -U’ to install it.
  3. 重启,发现在 /lib/modules 里面,出现了 2.6.30-ARCH-g9621145-dirty 这个文件夹(不知道大家出现的名字一不一样)。
  4. Reboot, and you’ll find a new directory named 2.6.30-ARCH-g9621145-dirty (I’m not sure if everyone gets the same name).
  5. AUR 里下载 Catalyst 的 Tarball,解压到 ~/catalyst/
  6. Download the tarball which contains PKGBUILD from AUR , extract it to ~/catalyst or somewhere.
  7. 修改 PKGBUILD 的 _kernver 为 2.6.30-ARCH-g9621145-dirty,或者你自己的文件夹名。
  8. Change _kernver to 2.6.30-ARCH-g9621145-dirty, or the different name you got.
  9. 修改版本号、MD5 等量。
  10. Change the Version, MD5, etc. to the new version.
  11. 把 # Fix 2.6.29 kernel 下面的两行改为:
  12. Change the following two lines of ‘# Fix 2.6.29 kernel’ to:
$ cd ${srcdir}/archive_files/common/lib/modules/fglrx/build_mod
$ patch -p0 <${srcdir}/2.6.30.diff || return 1
  1. 将上面帖子的附件解压,存为 ~/catalyst/2.6.30.diff,然后 makepkg,pacman -U。
  2. Get the patch from github , and save to ~/catalyst/2.6.30.diff, and complie and install catalyst.

上面说的就是整个动手的过程,以后内核更新或者 Catalyst 更新,可以使用这个方法自行修改。如果你懒得自己一步一步来,也可以从 github 里面下载我做好的 PKGBUILD 等文件,目前版本为 kernel26 2.6.30–4, catalyst 9.6–1,不保证更新。

You can download all the files I’ve modified from github , but It may not be the newest.

好了,折腾的过程就是这么多,目前用起来还可以,不过 Compiz 下性能仍是不佳,凑合着用吧……

评论