Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 250267 - x11-drivers/ati-drivers-8.501: failed to compile
Summary: x11-drivers/ati-drivers-8.501: failed to compile
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: New packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: X11 External Driver Maintainers
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-12-08 10:53 UTC by Peter Albrecht
Modified: 2009-04-08 23:44 UTC (History)
8 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Peter Albrecht 2008-12-08 10:53:06 UTC
I've run an "emerge -uND world" this weekend and compiled the new kernel (sys-kernel/gentoo-sources-2.6.26-r3). Having this completed successfully, I tried to re-emerge x11-drivers/ati-drivers, since it depends on the new kernel. But this step failed.

Reproducible: Always

Steps to Reproduce:
1.emerge ati-drivers (this would pick Version 8.501 at my system, the most "up-to-date" stable version)

Actual Results:  
Emerge failed with the error-log:

make: *** [kmod_build] Error 2
 *
 * ERROR: x11-drivers/ati-drivers-8.501 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3235:  Called linux-mod_src_compile
 *             environment, line 2450:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                                               CROSS_COMPILE=${CHOST}-                                                 LDFLAGS=\"$(get_abi_LDFLAGS)\"
                        ${BUILD_FIXES}                                          ${BUILD_PARAMS}                                                 ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *  The die message:
 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=  GCC_VER_MAJ=4 KVER=2.6.26-gentoo-r3 KDIR=/usr/src/linux kmod_build


Expected Results:  
emerge successfully installs the current stable ati-drivers

The problem is also described at:
http://www.nabble.com/ati-drivers-8.501-does-not-compile-with-kernel-gentoo-sources-2.6.26-r3-td20664288.html

Workaround:
emerging x11-drivers/ati-drivers-8.542 works fine.
Comment 1 Patrick Lauer gentoo-dev 2008-12-08 22:11:15 UTC
Please paste the relevant parts of the build log, not only the message that an error occurred.
Comment 2 Peter Albrecht 2008-12-10 20:20:17 UTC
Since I don't really know, which parts are relevant for you, I'll poste the complete file "/var/log/portage/x11-drivers\:ati-drivers-8.501\:20081208-100816.log":

-------------------------- 8< -------------------------------
 * Determining the location of the kernel source code
 * Found kernel source directory:
 *     /usr/src/linux
 * Found kernel object directory:
 *     /lib/modules/2.6.26-gentoo-r3/build
 * Found sources for kernel version:
 *     2.6.26-gentoo-r3
>>> Unpacking source...
Warning: target directory exists /var/tmp/portage/x11-drivers/ati-drivers-8.501/work
Verifying archive integrity... All good.
Uncompressing ATI Proprietary Linux Driver-8.501..............................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................
 * Applying ati-powermode-opt-path-2.patch ...
  [ ok ]
 * Converting 2.6.x/Makefile to use M= instead of SUBDIRS= ...
  [ ok ]
>>> Unpacking ./../common/usr/src/ati/fglrx_sample_source.tgz to /var/tmp/portage/x11-drivers/ati-drivers-8.501/work/extra
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/x11-drivers/ati-drivers-8.501/work ...
 * Preparing fglrx module
make -C /usr/src/linux M=/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x modules
make[1]: Entering directory `/usr/src/linux-2.6.26-gentoo-r3'
  CC [M]  /var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function ‘__ke_get_ke_pte’:
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2610: error: ‘NOPAGE_SIGBUS’ undeclared (first use in this function)
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2610: error: (Each undeclared identifier is reported only once
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2610: error: for each function it appears in.)
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function ‘__ke_get_vm_phys_addr’:
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2638: error: ‘NOPAGE_SIGBUS’ undeclared (first use in this function)
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function ‘__ke_get_vm_page_table’:
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2660: error: ‘NOPAGE_SIGBUS’ undeclared (first use in this function)
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: In function ‘KCL_TestAndClearPageDirtyFlag’:
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:2788: error: ‘NOPAGE_SIGBUS’ undeclared (first use in this function)
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c: At top level:
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3833: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3833: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3851: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3851: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3858: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3858: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3865: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3865: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3872: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3872: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3879: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3879: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3886: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3886: warning: initialization from incompatible pointer type
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3895: error: unknown field ‘nopage’ specified in initializer
/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.c:3895: warning: initialization from incompatible pointer type
make[2]: *** [/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/tmp/portage/x11-drivers/ati-drivers-8.501/work/common/lib/modules/fglrx/build_mod/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.26-gentoo-r3'
make: *** [kmod_build] Error 2
 *
 * ERROR: x11-drivers/ati-drivers-8.501 failed.
 * Call stack:
 *               ebuild.sh, line   49:  Called src_compile
 *             environment, line 3235:  Called linux-mod_src_compile
 *             environment, line 2450:  Called die
 * The specific snippet of code:
 *               eval "emake HOSTCC=\"$(tc-getBUILD_CC)\"                                               CROSS_COMPILE=${CHOST}-                                                 LDFLAGS=\"$(get_abi_LDFLAGS)\"
                        ${BUILD_FIXES}                                          ${BUILD_PARAMS}                                                 ${BUILD_TARGETS} " || die "Unable to emake HOSTCC="$(tc-getBUILD_CC)" CROSS_COMPILE=${CHOST}- LDFLAGS="$(get_abi_LDFLAGS)" ${BUILD_FIXES} ${BUILD_PARAMS} ${BUILD_TARGETS}";
 *  The die message:
 *   Unable to emake HOSTCC=i686-pc-linux-gnu-gcc CROSS_COMPILE=i686-pc-linux-gnu- LDFLAGS=  GCC_VER_MAJ=4 KVER=2.6.26-gentoo-r3 KDIR=/usr/src/linux kmod_build
 *
 * If you need support, post the topmost build error, and the call stack if relevant.
 * A complete build log is located at '/var/log/portage/x11-drivers:ati-drivers-8.501:20081208-100816.log'.
 * The ebuild environment file is located at '/var/tmp/portage/x11-drivers/ati-drivers-8.501/temp/environment'.
 *
-------------------------- 8< -------------------------------
Comment 3 Thomas 2008-12-24 11:03:38 UTC
The following patches fix the compilation problems, but in the end i did not succeed to build the module:

  Building modules, stage 2.
  MODPOST 1 modules
FATAL: modpost: GPL-incompatible module fglrx.ko uses GPL-only symbol 'init_pid_ns'

Who marked the driver as x86, BTW? ;-)


--- firegl_public.h.orig	2008-12-24 05:38:49.025719000 +0100
+++ firegl_public.h	2008-12-24 11:31:28.329954507 +0100
@@ -73,6 +73,10 @@
     pgd_p = pgd_offset_k(pte_linear); \
 } while(0)
 
+#ifndef NOPAGE_SIGBUS
+#define NOPAGE_SIGBUS 0
+#endif /* !NOPAGE_SIGBUS */
+
 #define PGD_PRESENT(pgd_p) \
 do { \
     if (!pgd_present(*(pgd_p)))	\
--- firegl_public.c.orig	2008-12-24 05:38:48.985722000 +0100
+++ firegl_public.c	2008-12-24 11:48:57.489963010 +0100
@@ -3274,10 +3274,6 @@
 
 /*****************************************************************************/
 
-#ifndef NOPAGE_SIGBUS
-#define NOPAGE_SIGBUS 0
-#endif /* !NOPAGE_SIGBUS */
-
 typedef struct page mem_map_t;
 typedef mem_map_t *vm_nopage_ret_t;
 
@@ -3830,7 +3826,7 @@
 
 static struct vm_operations_struct vm_ops =
 {
-    nopage:  vm_nopage,
+    nopfn:  vm_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
@@ -3839,7 +3835,7 @@
 #ifdef __ia64__
 static struct vm_operations_struct vm_cant_ops =
 {
-    nopage:  vm_cant_nopage,
+    nopfn:  vm_cant_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
@@ -3848,42 +3844,42 @@
 
 static struct vm_operations_struct vm_shm_ops =
 {
-    nopage:  vm_shm_nopage,
+    nopfn:  vm_shm_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
 
 static struct vm_operations_struct vm_pci_bq_ops =
 {
-    nopage:  vm_dma_nopage,
+    nopfn:  vm_dma_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
 
 static struct vm_operations_struct vm_ctx_ops =
 {
-    nopage:  vm_dma_nopage,
+    nopfn:  vm_dma_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
 
 static struct vm_operations_struct vm_pcie_ops = 
 {
-    nopage:  vm_pcie_nopage,
+    nopfn:  vm_pcie_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
 
 static struct vm_operations_struct vm_kmap_ops =
 {
-    nopage:  vm_kmap_nopage,
+    nopfn:  vm_kmap_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
 
 static struct vm_operations_struct vm_gart_ops =
 {
-    nopage:  vm_gart_nopage,
+    nopfn:  vm_gart_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
@@ -3892,14 +3888,14 @@
 #ifndef __ia64__
 static struct vm_operations_struct vm_agp_bq_ops =
 {
-    nopage:  vm_nopage,
+    nopfn:  vm_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
 #else		
 static struct vm_operations_struct vm_cant_agp_bq_ops =
 {
-    nopage:  vm_cant_nopage,
+    nopfn:  vm_cant_nopage,
     open:    ip_drm_vm_open,
     close:   ip_drm_vm_close,
 };
Comment 4 rob 2008-12-27 15:28:07 UTC
I have exactly the same problem, with kernel 2.6.26-gentoo-r4 and this version of ati-drivers (8.501).

However, with the following line in package.keywords, I am able to successfully install the ati-drivers with the stable xorg-server:

=x11-drivers/ati-drivers-8.542

Maybe the stable ati-drivers package is out-of-date with respect to the stable gentoo-sources kernel package (due to API change in kernel)?
Comment 5 Joe C. 2009-01-05 21:49:20 UTC
package x11-drivers/ati-drivers-8.542 is masked, I can't emerge it in.  Any idea how to make it work?
> 
(In reply to comment #4)
> I have exactly the same problem, with kernel 2.6.26-gentoo-r4 and this version
> of ati-drivers (8.501).
> 
> However, with the following line in package.keywords, I am able to successfully
> install the ati-drivers with the stable xorg-server:
> 
> =x11-drivers/ati-drivers-8.542
> 
> Maybe the stable ati-drivers package is out-of-date with respect to the stable
> gentoo-sources kernel package (due to API change in kernel)?
> 
Comment 6 chrissou 2009-01-27 13:57:23 UTC
(In reply to comment #4)
> I have exactly the same problem, with kernel 2.6.26-gentoo-r4 and this version
> of ati-drivers (8.501).
> 
> However, with the following line in package.keywords, I am able to successfully
> install the ati-drivers with the stable xorg-server:
> 
> =x11-drivers/ati-drivers-8.542
> 
> Maybe the stable ati-drivers package is out-of-date with respect to the stable
> gentoo-sources kernel package (due to API change in kernel)?
> 

Same problem with 8.501 drivers and 2.6.27-gentoo-r8
Resolve by emerge 8.542 version
Thanks a lot

Comment 7 Jeffrey Gardner (RETIRED) gentoo-dev 2009-02-03 06:29:24 UTC
Fixed in later versions.
Comment 8 pille 2009-02-03 13:26:37 UTC
> Fixed in later versions.

so can you please stabilize x11-drivers/ati-drivers-8.542
(or perhaps a newer one, since #243172)
as stable ati-drivers should compile against stable gentoo-sources,
or should i open a new bug for this?
Comment 9 rob 2009-02-21 00:55:31 UTC
(In reply to comment #8)
> > Fixed in later versions.
> 
> so can you please stabilize x11-drivers/ati-drivers-8.542
> (or perhaps a newer one, since #243172)
> as stable ati-drivers should compile against stable gentoo-sources,
> or should i open a new bug for this?
> 

I agree. This is a versioning bug and the whole point is that stable gentoo-sources and stable ati-drivers do not match -- therefore stable branch is broken.

Please reopen bug until ati-drivers and gentoo-sources work together in stable branch!
Comment 10 Peter Schroeder 2009-02-25 20:38:42 UTC
I agree. Please reopen this bug or put the fix in stable. I too am very frustrated with this.

(In reply to comment #9)
> (In reply to comment #8)
> > > Fixed in later versions.
> > 
> > so can you please stabilize x11-drivers/ati-drivers-8.542
> > (or perhaps a newer one, since #243172)
> > as stable ati-drivers should compile against stable gentoo-sources,
> > or should i open a new bug for this?
> > 
> 
> I agree. This is a versioning bug and the whole point is that stable
> gentoo-sources and stable ati-drivers do not match -- therefore stable branch
> is broken.
> 
> Please reopen bug until ati-drivers and gentoo-sources work together in stable
> branch!
> 

Comment 11 H. Peter Pfeufer 2009-03-25 15:14:29 UTC
Same problem here with ati-drivers-8.582 and kernel 2.6.29
Comment 12 Vitaly A. Repin 2009-03-31 17:11:22 UTC
Same problem here with ati-drivers-8.582 and kernel 2.6.29

Can not use my X server after update to the latest portage.

Does anybody has a receipe?

I can not reopen this bug - should I create a new one?  For ati-drivers-8.582 and kernel 2.6.29 ?