Linux|系统管理|WEB开发

关注Linux,系统管理,WEB开发以及开源世界

在2.6.31上编译ATI显卡驱动

| Comments

AMD总算发布了更新的ATI显卡驱动程序V9.8,相比之前的9.7,这次增加了对2.6.29/2.6.30核心的支持。
我在我的2.6.31-5上编译能成功,但是加载flgrx驱动的时候,给出下面的报错信息:

fglrx: Unknown symbol find_task_by_vpid

看来2.6.31又改动了不少。搜索了一番,得出下面的解决办法,没有出现kernel panic的情况。

去驱动源代码目录,打开firegl_public.c文件,定位到1310行,类似如下:

#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26)
   p = find_task_by_pid( pid );
#else
   p = find_task_by_vpid( pid );
#endif

修改为:

#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26)
    p = pid_task(pid,PIDTYPE_PID);
#else
    p = pid_task(pid,PIDTYPE_PID);
#endif

再重新编译试试。
在我这里已经OK了。

Comments