voy
July 5th, 2009, 09:54 AM
Hey,
So I have been forced to install 2.6.30 kernel, because otherwise Opera keeps timing out on ipv6 dns queries. Trouble is, my fglrx stopped working.
I tried both using the fglrx-kernel-source package with the following results:
voy@apocalypse:~$ sudo apt-get install fglrx-kernel-source
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
xorg-driver-fglrx
The following NEW packages will be installed:
fglrx-kernel-source
0 upgraded, 1 newly installed, 0 to remove and 8 not upgraded.
Need to get 0B/1609kB of archives.
After this operation, 5427kB of additional disk space will be used.
Selecting previously deselected package fglrx-kernel-source.
(Reading database ... 160973 files and directories currently installed.)
Unpacking fglrx-kernel-source (from .../fglrx-kernel-source_2%3a8.620-0ubuntu1~jaunty_i386.deb) ...
Setting up fglrx-kernel-source (2:8.620-0ubuntu1~jaunty) ...
Adding Module to DKMS build system
Doing initial module build
Error! Build of fglrx.ko failed for: 2.6.30-10-generic (i686)
Consult the make.log in the build directory
/var/lib/dkms/fglrx/8.620/build/ for more information.
Installing initial module
Error! Could not locate fglrx.ko for module fglrx in the DKMS tree.
You must run a dkms build for kernel 2.6.30-10-generic (i686) first.
Done.
So I took a look at the logs in /var/lib/dkms/fglrx/8.620/build/ and this is what I found out:
voy@apocalypse:/var/lib/dkms/fglrx/8.620/build$ sudo ./make.sh
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.GCC* .??* *.symvers
make -C /lib/modules/2.6.30-10-generic/build SUBDIRS=/var/lib/dkms/fglrx/8.620/build/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.30-10-generic'
CC [M] /var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.o
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:41:2: error: #error unknown or undefined architecture configured
In file included from /var/lib/dkms/fglrx/8.620/build/2.6.x/drmP.h:86,
from /var/lib/dkms/fglrx/8.620/build/2.6.x/drm_proc.h:41,
from /var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:431:
/var/lib/dkms/fglrx/8.620/build/2.6.x/drm_os_linux.h:45: error: conflicting types for ‘irqreturn_t’
include/linux/irqreturn.h:16: error: previous declaration of ‘irqreturn_t’ was here
In file included from /var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:431:
/var/lib/dkms/fglrx/8.620/build/2.6.x/drm_proc.h: In function ‘FGLDRM__vma_info’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/drm_proc.h:497: warning: format ‘%08lx’ expects type ‘long unsigned int’, but argument 5 has type ‘phys_addr_t’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_SetPageCache_Array’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1230: warning: unused variable ‘ret’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1229: warning: unused variable ‘i’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_GetEffectiveUid’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1451: error: ‘struct task_struct’ has no member named ‘euid’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_PosixSecurityCapSetIPCLock’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1825: error: ‘struct task_struct’ has no member named ‘cap_effective’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1829: error: ‘struct task_struct’ has no member named ‘cap_effective’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_InstallInterruptHandler’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:2727: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KAS_Ih_Execute’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:4209: warning: ‘return’ with no value, in function returning non-void
make[2]: *** [/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/lib/dkms/fglrx/8.620/build/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.30-10-generic'
make: *** [kmod_build] Error 2
build failed with return value 2
Obviously, there is some sort of a problem with the compilation, but is it something that I can solve or is it just that fglrx is incompatible with my kernel? I don't insist on 2.6.30, the thing is that kernels below 2.6.29 (I think) don't support the option to disable ipv6 compiled in the kernel and I need to do that to run Opera as my main browser.
Thanks for any pointers!
So I have been forced to install 2.6.30 kernel, because otherwise Opera keeps timing out on ipv6 dns queries. Trouble is, my fglrx stopped working.
I tried both using the fglrx-kernel-source package with the following results:
voy@apocalypse:~$ sudo apt-get install fglrx-kernel-source
Reading package lists... Done
Building dependency tree
Reading state information... Done
Suggested packages:
xorg-driver-fglrx
The following NEW packages will be installed:
fglrx-kernel-source
0 upgraded, 1 newly installed, 0 to remove and 8 not upgraded.
Need to get 0B/1609kB of archives.
After this operation, 5427kB of additional disk space will be used.
Selecting previously deselected package fglrx-kernel-source.
(Reading database ... 160973 files and directories currently installed.)
Unpacking fglrx-kernel-source (from .../fglrx-kernel-source_2%3a8.620-0ubuntu1~jaunty_i386.deb) ...
Setting up fglrx-kernel-source (2:8.620-0ubuntu1~jaunty) ...
Adding Module to DKMS build system
Doing initial module build
Error! Build of fglrx.ko failed for: 2.6.30-10-generic (i686)
Consult the make.log in the build directory
/var/lib/dkms/fglrx/8.620/build/ for more information.
Installing initial module
Error! Could not locate fglrx.ko for module fglrx in the DKMS tree.
You must run a dkms build for kernel 2.6.30-10-generic (i686) first.
Done.
So I took a look at the logs in /var/lib/dkms/fglrx/8.620/build/ and this is what I found out:
voy@apocalypse:/var/lib/dkms/fglrx/8.620/build$ sudo ./make.sh
AMD kernel module generator version 2.1
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.GCC* .??* *.symvers
make -C /lib/modules/2.6.30-10-generic/build SUBDIRS=/var/lib/dkms/fglrx/8.620/build/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-2.6.30-10-generic'
CC [M] /var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.o
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:41:2: error: #error unknown or undefined architecture configured
In file included from /var/lib/dkms/fglrx/8.620/build/2.6.x/drmP.h:86,
from /var/lib/dkms/fglrx/8.620/build/2.6.x/drm_proc.h:41,
from /var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:431:
/var/lib/dkms/fglrx/8.620/build/2.6.x/drm_os_linux.h:45: error: conflicting types for ‘irqreturn_t’
include/linux/irqreturn.h:16: error: previous declaration of ‘irqreturn_t’ was here
In file included from /var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:431:
/var/lib/dkms/fglrx/8.620/build/2.6.x/drm_proc.h: In function ‘FGLDRM__vma_info’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/drm_proc.h:497: warning: format ‘%08lx’ expects type ‘long unsigned int’, but argument 5 has type ‘phys_addr_t’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_SetPageCache_Array’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1230: warning: unused variable ‘ret’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1229: warning: unused variable ‘i’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_GetEffectiveUid’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1451: error: ‘struct task_struct’ has no member named ‘euid’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_PosixSecurityCapSetIPCLock’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1825: error: ‘struct task_struct’ has no member named ‘cap_effective’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:1829: error: ‘struct task_struct’ has no member named ‘cap_effective’
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KCL_InstallInterruptHandler’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:2727: warning: passing argument 2 of ‘request_irq’ from incompatible pointer type
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c: In function ‘KAS_Ih_Execute’:
/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.c:4209: warning: ‘return’ with no value, in function returning non-void
make[2]: *** [/var/lib/dkms/fglrx/8.620/build/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/lib/dkms/fglrx/8.620/build/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-2.6.30-10-generic'
make: *** [kmod_build] Error 2
build failed with return value 2
Obviously, there is some sort of a problem with the compilation, but is it something that I can solve or is it just that fglrx is incompatible with my kernel? I don't insist on 2.6.30, the thing is that kernels below 2.6.29 (I think) don't support the option to disable ipv6 compiled in the kernel and I need to do that to run Opera as my main browser.
Thanks for any pointers!