xorg server 1.5发布了,而我使用xorg-server 1.3也有相当长时间了。
nv/ati的商业驱动一如既往的支持老版本好过新版本,无疑,xorg-server 1.3似乎是更好的选择。
而唯一一个开源的官方支持的,也是我认为兼容性最好的intel驱动,从2.1.1版本之后就需要xorg-server > 1.3的版本了(拜托,都是作显卡的,都是写驱动的,是不是可以去请教请教人家nv/ati,怎么能让驱动兼容性好一点)。
最关键的是,新的硬件只在新版本的intel驱动中支持,这是要命的。
OK,我们让步,看看xorg-server 1.5,数数他的依赖:至少,libdrm-2.3.1, mesa-7.1,内核无所谓,是不是2.6.27没关系,而这个版本组合只能支持到intel驱动的2.4.0版本,如果想要更新的,libdrm至少是2.4.0。即使不想要更新的,Mesa 7.1也是unstable版本。
从libdrm-2.3在2006年发布到libdrm-2.3.1在2008年的发布,中间过了2年的时间。鬼才知道libdrm 2.4.0什么时候发布。
现在,我们只能使用libdrm的git版本,因为数据结构和一些函数的变化,mesa自然也要git的版本。
那就去git吧,结果,libdrm的i915 gem实现需要内核的pci_read_base函数,这个函数,在最后一次公开发布的内核版本kernel-2.6.27rc5中仍然没有merge,Oh my dog,又要一个git的kernel.
现在有两个选择:
1,一切都git。
2,继续xorg-server 1.3.
对于我自己,1.3够了,不需要任何update,如果是一个OS的厂商,怎么对付用户呢?
都用git意味着随时可能出现的挂机和没有任何的支持,如果你求助,得到的是:这是unstable版本,请使用stable的版本。
这些鸟事已经发生太多了,xorg-server 1.4发布的时候,官方release的driver居然有3个编译不过,我在告诉别人的时候居然说是我的问题(哥哥我阅代码无数,难道连个函数有没有实现都看不出来?),结果后来官方发了个Mail来说明这个事。
后来的xorg更创造性的、登峰造极的用hal来探测硬件,xorg.conf可以扔掉了,好倒是很好,问题是,你让这个关键的一个应用,沿用了30年的体系依赖与一个在某些机器上都会hang住的年幼的daemon是否合适?
而伟大的mode settings需要在驱动初始化的时候如闪电一般的闪烁一下屏幕,知道的明白在干什么,不知道的还以为显卡坏了,所以,我一直在不断的porting 老的i810驱动,虽然xv支持的不好,至少,用着还算正常人。
饶了我们这些Linux的开发者和用户吧。让一个驱动老老实实的跑在当前stable版本上很困难吗?
或者,让这些linux os 厂商采用unstable组件,一用就是几年?
那,什么时候才是个头呢?
阅读(823) | 评论(0) | 转发(0) |