1 votes

Installation du noyau 3.13 sur Saucy (13.10) - possible ?

Je voulais installer un noyau 3.13.5 à partir de http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.13.5-trusty/ . Je sais que les dossiers s'appellent trusty mais puis-je les installer sur 13.10 ? Après avoir attaché dpkg -i sur les paquets, j'obtiens ce qui suit :

$ sudo dpkg -i linux-headers-3.13.5-031305_3.13.5-031305.201402221823_all.deb linux-headers-3.13.5-031305-generic_3.13.5-031305.201402221823_i386.deb linux-image-3.13.5-031305-gene
ric_3.13.5-031305.201402221823_i386.deb.1
[sudo] password for XXX: 
Selecting previously unselected package linux-headers-3.13.5-031305.
(Reading database ... 174675 files and directories currently installed.)
Unpacking linux-headers-3.13.5-031305 (from linux-headers-3.13.5-031305_3.13.5-031305.201402221823_all.deb) ...
Selecting previously unselected package linux-headers-3.13.5-031305-generic.
Unpacking linux-headers-3.13.5-031305-generic (from linux-headers-3.13.5-031305-generic_3.13.5-031305.201402221823_i386.deb) ...
Selecting previously unselected package linux-image-3.13.5-031305-generic.
Unpacking linux-image-3.13.5-031305-generic (from linux-image-3.13.5-031305-generic_3.13.5-031305.201402221823_i386.deb.1) ...
Done.
Setting up linux-headers-3.13.5-031305 (3.13.5-031305.201402221823) ...
Setting up linux-headers-3.13.5-031305-generic (3.13.5-031305.201402221823) ...
Examining /etc/kernel/header_postinst.d.
run-parts: executing /etc/kernel/header_postinst.d/dkms 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
Error! Bad return status for module build on kernel: 3.13.5-031305-generic (i686)
Consult /var/lib/dkms/fglrx/13.251/build/make.log for more information.
Setting up linux-image-3.13.5-031305-generic (3.13.5-031305.201402221823) ...
Running depmod.
update-initramfs: deferring update (hook will be called later)
Examining /etc/kernel/postinst.d.
run-parts: executing /etc/kernel/postinst.d/apt-auto-removal 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
run-parts: executing /etc/kernel/postinst.d/dkms 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
Error! Bad return status for module build on kernel: 3.13.5-031305-generic (i686)
Consult /var/lib/dkms/fglrx/13.251/build/make.log for more information.
run-parts: executing /etc/kernel/postinst.d/initramfs-tools 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
update-initramfs: Generating /boot/initrd.img-3.13.5-031305-generic
run-parts: executing /etc/kernel/postinst.d/pm-utils 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
run-parts: executing /etc/kernel/postinst.d/update-notifier 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
run-parts: executing /etc/kernel/postinst.d/zz-update-grub 3.13.5-031305-generic /boot/vmlinuz-3.13.5-031305-generic
Generating grub.cfg ...
Found linux image: /boot/vmlinuz-3.13.5-031305-generic
Found initrd image: /boot/initrd.img-3.13.5-031305-generic
Found linux image: /boot/vmlinuz-3.11.0-17-generic
Found initrd image: /boot/initrd.img-3.11.0-17-generic
Found memtest86+ image: /boot/memtest86+.bin
done

EDIT

C'est mon /var/lib/dkms/fglrx/13.251/build/make.log

DKMS make.log for fglrx-13.251 for kernel 3.13.5-031305-generic (i686)
pon, 3 mar 2014, 21:41:07 CET 
AMD kernel module generator version 2.1 
doing Makefile based build for kernel 2.6.x and higher
rm -rf *.c *.h *.o *.ko *.a .??* *.symvers
make -C /lib/modules/3.13.5-031305-generic/build SUBDIRS=/var/lib/dkms/fglrx/13.251/build/2.6.x modules
make[1]: Entering directory `/usr/src/linux-headers-3.13.5-031305-generic'
  CC [M]  /var/lib/dkms/fglrx/13.251/build/2.6.x/firegl_public.o
/var/lib/dkms/fglrx/13.251/build/2.6.x/firegl_public.c: In function ‘KCL_GetEffectiveUid’:
/var/lib/dkms/fglrx/13.251/build/2.6.x/firegl_public.c:1758:5: error: incompatible types when returning type ‘kuid_t’ but ‘KCL_TYPE_Uid’ was expected
     return current_euid();
     ^   
/var/lib/dkms/fglrx/13.251/build/2.6.x/firegl_public.c:1762:1: warning: control reaches end of non-void function [-Wreturn-type]
 }
 ^
make[2]: *** [/var/lib/dkms/fglrx/13.251/build/2.6.x/firegl_public.o] Error 1
make[1]: *** [_module_/var/lib/dkms/fglrx/13.251/build/2.6.x] Error 2
make[1]: Leaving directory `/usr/src/linux-headers-3.13.5-031305-generic'
make: *** [kmod_build] Error 2
build failed with return value 2

2voto

Patryk Points 8556

J'ai trouvé une solution :

J'ai appliqué le correctif suivant (trouvé sur http://forums.opensuse.org/showthread.php/493913-ATI-Proprietary-driver-13-12-installation-fails-in-openSUSE-13-1 )

diff -rup fglrx.orig/firegl_public.c fglrx/firegl_public.c
--- fglrx.orig/firegl_public.c    2013-12-20 01:37:15.155648294 +0100
+++ fglrx/firegl_public.c    2013-12-21 01:02:47.201517242 +0100
@@ -1754,11 +1754,17 @@ KCL_TYPE_Pid ATI_API_CALL KCL_GetTgid(vo
  */
 KCL_TYPE_Uid ATI_API_CALL KCL_GetEffectiveUid(void)
 {
+#ifdef CONFIG_UIDGID_STRICT_TYPE_CHECKS
+    return __kuid_val(current_euid());
+#else
+
 #ifdef current_euid
     return current_euid();
 #else
     return current->euid;
 #endif
+
+#endif
 }

 /** /brief Delay execution for the specified number of microseconds
diff -rup fglrx.orig/kcl_acpi.c fglrx/kcl_acpi.c
--- fglrx.orig/kcl_acpi.c    2013-12-20 01:13:55.000000000 +0100
+++ fglrx/kcl_acpi.c    2013-12-21 01:06:00.158734992 +0100
@@ -792,7 +792,9 @@ static unsigned int KCL_ACPI_SearchHandl
 unsigned int ATI_API_CALL KCL_ACPI_GetHandles(kcl_match_info_t *pInfo)
 {
 #if LINUX_VERSION_CODE > KERNEL_VERSION(2,6,12)
-    #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
+    #if LINUX_VERSION_CODE >= KERNEL_VERSION(3,13,0)
+        pInfo->video_handle = pInfo->pcidev->dev.acpi_node.companion;
+    #elif LINUX_VERSION_CODE >= KERNEL_VERSION(3,8,0)
         pInfo->video_handle = pInfo->pcidev->dev.acpi_node.handle;
     #elif LINUX_VERSION_CODE > KERNEL_VERSION(2,6,19)
         pInfo->video_handle = pInfo->pcidev->dev.archdata.acpi_handle;
@@ -996,6 +998,10 @@ int ATI_API_CALL KCL_ACPI_ParseTable(cha
     {
         return KCL_ACPI_ERROR;
     }    
+#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,9,1)
+    ((acpi_tbl_table_handler)handler)(hdr);
+#else
     ((acpi_table_handler)handler)(hdr);
+#endif
     return KCL_ACPI_OK;
 }

Et maintenant ça marche :)

1voto

paulrehkugler Points 165

Cela signifie simplement que vous ne serez pas en mesure de charger les fglrx au démarrage, qui fournit une accélération graphique 3D pour les GPU AMD. Le noyau devrait toujours être installé correctement.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X