Un error al actualizar al kernel 2.6.23

Buenas,

Tengo un error al actualizar al kernel 2.6.23

La compilación y arranque funcionan sin problemas. Pero al ir a compilar modulos del kernel (gspca para la webcam y nvidia para la grafica) me da un error diciendo que la configuracion del kernel es incorrecta.

Os copio aqui toda la salida


$ sudo emerge -va nvidia-drivers

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild R ] x11-drivers/nvidia-drivers-100.14.09 USE="-gtk (-multilib)" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

Would you like to merge these packages? [Yes/No] y
>>> Verifying ebuild Manifests...

>>> Emerging (1 of 1) x11-drivers/nvidia-drivers-100.14.09 to /
* NVIDIA-Linux-x86_64-100.14.09-pkg2.run RMD160 ;-) ... [ ok ]
* NVIDIA-Linux-x86_64-100.14.09-pkg2.run SHA1 ;-) ... [ ok ]
* NVIDIA-Linux-x86_64-100.14.09-pkg2.run SHA256 ;-) ... [ ok ]
* NVIDIA-Linux-x86_64-100.14.09-pkg2.run size ;-) ... [ ok ]
* checking ebuild checksums ;-) ... [ ok ]
* checking auxfile checksums ;-) ... [ ok ]
* checking miscfile checksums ;-) ... [ ok ]
* checking NVIDIA-Linux-x86_64-100.14.09-pkg2.run ;-) ... [ ok ]
* Determining the location of the kernel source code
* Found kernel source directory:
* /usr/src/linux
* Found kernel object directory:
* /lib/modules/2.6.23-gentoo/build
* Found sources for kernel version:
* 2.6.23-gentoo
* Checking for MTRR support ... [ ok ]
>>> Unpacking source...
Creating directory NVIDIA-Linux-x86_64-100.14.09-pkg2
Verifying archive integrity... OK
Uncompressing NVIDIA Accelerated Graphics Driver for Linux-x86_64 100.14.09.....................................................................................................................................
* Applying NVIDIA_glx-defines.patch ... [ ok ]
* Applying NVIDIA_glx-glheader.patch ... [ ok ]
* Applying NVIDIA_i2c-hwmon.patch ... [ ok ]
* Converting Makefile.kbuild to use M= instead of SUBDIRS= ... [ ok ]
>>> Source unpacked.
>>> Compiling source in /var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv ...
* Preparing nvidia module
rm -f Makefile
sh ./conftest.sh "x86_64-pc-linux-gnu-gcc" "x86_64-pc-linux-gnu-gcc" /usr/src/linux /lib/modules/2.6.23-gentoo/build cc_sanity_check full_output
sh ./conftest.sh "x86_64-pc-linux-gnu-gcc" "x86_64-pc-linux-gnu-gcc" /usr/src/linux /lib/modules/2.6.23-gentoo/build select_makefile full_output
make --no-print-directory -f Makefile module

NVIDIA: calling KBUILD...
make CC=x86_64-pc-linux-gnu-gcc KBUILD_OUTPUT=/lib/modules/2.6.23-gentoo/build KBUILD_VERBOSE=1 -C /usr/src/linux M=/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv modules
make -C /lib/modules/2.6.23-gentoo/build \
KBUILD_SRC=/usr/src/linux-2.6.23-gentoo \
KBUILD_EXTMOD="/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv" -f /usr/src/linux-2.6.23-gentoo/Makefile modules
test -e include/linux/autoconf.h -a -e include/config/auto.conf || ( \
echo; \
echo " ERROR: Kernel configuration is invalid."; \
echo " include/linux/autoconf.h or include/config/auto.conf are missing."; \
echo " Run 'make oldconfig && make prepare' on kernel src to fix it."; \
echo; \
/bin/false)
mkdir -p /var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/.tmp_versions
rm -f /var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/.tmp_versions/*
make -f /usr/src/linux-2.6.23-gentoo/scripts/Makefile.build obj=/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv
echo \#define NV_COMPILER \"`x86_64-pc-linux-gnu-gcc -v 2>&1 | tail -n 1`\" > /var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv_compiler.h
x86_64-pc-linux-gnu-gcc -Wp,-MD,/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/.nv.o.d -nostdinc -isystem /usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/include -D__KERNEL__ -Iinclude -Iinclude2 -I/usr/src/linux-2.6.23-gentoo/include -include include/linux/autoconf.h -I/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv -Wall -Wundef -Wstrict-prototypes -Wno-trigraphs -fno-strict-aliasing -fno-common -Werror-implicit-function-declaration -Os -m64 -mno-red-zone -mcmodel=kernel -pipe -Wno-sign-compare -fno-asynchronous-unwind-tables -funit-at-a-time -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -maccumulate-outgoing-args -DCONFIG_AS_CFI=1 -DCONFIG_AS_CFI_SIGNAL_FRAME=1 -fomit-frame-pointer -fno-stack-protector -Wdeclaration-after-statement -Wno-pointer-sign -I/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv -Wall -Wimplicit -Wreturn-type -Wswitch -Wformat -Wchar-subscripts -Wparentheses -Wno-multichar -Werror -O -fno-common -msoft-float -mcmodel=kernel -mno-red-zone -MD -Wno-cast-qual -Wno-error -D_LOOSE_KERNEL_NAMES -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\"100.14.09\" -UDEBUG -U_DEBUG -DNDEBUG -DNV_SIGNAL_STRUCT_RLIM -DNV_MULTIPLE_BRIDGE_AGPGART_PRESENT -DNV_PCI_GET_CLASS_PRESENT -DNV_SYSCTL_MAX_MAP_COUNT_PRESENT -DNV_PM_MESSAGE_T_PRESENT -DNV_PCI_CHOOSE_STATE_PRESENT -DNV_VM_INSERT_PAGE_PRESENT -DNV_OLD_MM_KGDB_BREAKPOINT_PRESENT -DNV_REMAP_PFN_RANGE_PRESENT -DNV_CHANGE_PAGE_ATTR_PRESENT -DNV_ACQUIRE_CONSOLE_SEM_PRESENT -DNV_VMAP_4_PRESENT -DMODULE -D"KBUILD_STR(s)=#s" -D"KBUILD_BASENAME=KBUILD_STR(nv)" -D"KBUILD_MODNAME=KBUILD_STR(nvidia)" -c -o /var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/.tmp_nv.o /var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c
/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c: En la función 'nvidia_init_module':
/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c:1322: error: demasiados argumentos para la función 'kmem_cache_create'
/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c:1431: error: demasiados argumentos para la función 'kmem_cache_create'
/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c:1567: error: valor void no ignorado como debería de ser
/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c: En la función 'nvidia_exit_module':
/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.c:1599: error: valor void no ignorado como debería de ser
make[4]: *** [/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv/nv.o] Error 1
make[3]: *** [_module_/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/work/NVIDIA-Linux-x86_64-100.14.09-pkg2/usr/src/nv] Error 2
make[2]: *** [modules] Error 2
NVIDIA: left KBUILD.
nvidia.ko failed to build!
make[1]: *** [module] Error 1
make: *** [module] Error 2
*
* ERROR: x11-drivers/nvidia-drivers-100.14.09 failed.
* Call stack:
* ebuild.sh, line 1654: Called dyn_compile
* ebuild.sh, line 990: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* nvidia-drivers-100.14.09.ebuild, line 212: Called linux-mod_src_compile
* linux-mod.eclass, line 518: Called die
*
* Unable to make IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/lib/modules/2.6.23-gentoo/build clean module.
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/temp/build.log'.
*
--------------------------- ACCESS VIOLATION SUMMARY ---------------------------
LOG FILE = "/var/log/sandbox/sandbox-x11-drivers_-_nvidia-drivers-100.14.09-24484.log"

open_wr: /usr/src/linux-2.6.23-gentoo/null.gcda
open_wr: /usr/src/linux-2.6.23-gentoo/null.gcda
open_wr: /usr/src/linux-2.6.23-gentoo/null.gcda
open_wr: /usr/src/linux-2.6.23-gentoo/null.gcda
open_wr: /usr/src/linux-2.6.23-gentoo/null.gcda
--------------------------------------------------------------------------------

* Messages for package x11-drivers/nvidia-drivers-100.14.09:

*
* ERROR: x11-drivers/nvidia-drivers-100.14.09 failed.
* Call stack:
* ebuild.sh, line 1654: Called dyn_compile
* ebuild.sh, line 990: Called qa_call 'src_compile'
* ebuild.sh, line 44: Called src_compile
* nvidia-drivers-100.14.09.ebuild, line 212: Called linux-mod_src_compile
* linux-mod.eclass, line 518: Called die
*
* Unable to make IGNORE_CC_MISMATCH=yes V=1 SYSSRC=/usr/src/linux SYSOUT=/lib/modules/2.6.23-gentoo/build clean module.
* If you need support, post the topmost build error, and the call stack if relevant.
* A complete build log is located at '/var/tmp/portage/x11-drivers/nvidia-drivers-100.14.09/temp/build.log'.
*



He buscado por internet pero no encuentro nada concluyente.

Por cierto se me ha olvidado decir que he hecho lo que pone de
make oldconfig && make prepare

Y tambien he verificado que los dos archivos /usr/src/linux/include/config/auto.conf
y
/usr/src/linux/include/linux/autoconf.h

Existen

Prueba a desinstalar los drivers antes de instalarlos de nuevo para el nuevo kernel.

Según parece es una violación del sandbox. Eso pasa cuando un ebuild intenta escribir en una zona en la que no debería estar escribiendo, o al menos eso tengo entendido.

Siempre puedes probar a hacer

FEATURES="-sandbox" emerge -va talycual


... pero no creo que sea una buena idea.

De todas maneras el kernel 2.6.23 está keyworded para x86... imagino que será por alguna buena razón. Echa un vistazo en el el bugzilla, por que probablemente diga algo.

Saludos!
Lo siento pero lo tuyo no me ha ayudado

De todas formas el ebuild del kernel esta asi

KEYWORDS="~amd64 ~x86"
A veces me ha pasado que un kernel muy nuevo necesita de un driver tambien nuevo.

Yo tenia que usar los últimos kernels para que fuera compatible con mi maquina, asi que a la hora de instalar nvidia o alsa, me salian errores de ese tipo porque el driver al parecer no veia el kernel o no era compatible, no se. Prueba instalando la últimisima versión, la .19 si mal no recuerdo (no estoy en casa para mirarlo :P)


Un saludo.
Na al final preguntando en IRC me dijeron que es que mi modulo nvidia necesita un parche para compilar en el nuevo kernel.

Para el gspca no se que habra que hacer pero bueno tampoco me preocupa demasiado, apenas uso la webcam...
Pues también tengo el mismo problema en mi gentoo, tienes también un acer¿?
Para el kernel 2.6.23 hay que instalar la version 100.14.19 (y desactivar sandbox).
6 respuestas