Bonjour à tous,

Petite intro pour remettre le contexte, je compile mes kernels depuis le
début des années 2000, mon but est d'avoir un kernel pour serveur ou
desktop avec le minimum nécessaire, désactiver des fonctionnalités ou
drivers inutiles, mettre des options qui m'intéressent, ... bref tout
allait bien jusqu'au kernel 4.16.15 à partir des versions suivantes en
4.16 et jusqu'au 4.19.12 lorsque je pars de mon fichier de configuration
et que j'applique un oldconfig j’obtiens systématiquement le message
bloquant : 32-bit relocation outside of kernel

Ce message est très peu documenté, je compile pourtant bien un kernel 64
bits, il semble que lorsque l'image dépasse les 4,8Mo cela me déclenche
ce problème, j'ai donc fait une cure d'amincissement sans succès car ce
qui reste est vitale pour bien fonctionner. Ce qui m'étonne c'est de
voir les kernels Debian dépasser sans soucis cette taille de vmlinuz et
fonctionner normalement.

Je me suis dit j'ai loupé une évolution dans les options du .config qui
n'est pas compatible avec ma conf. J'ai tenté deux approches :

- reprendre des fichiers de configurations Debian fonctionnels pour les
utiliser comme base pour recompiler la même version sans succès toujours
la même erreur

- partir d'un 4.19.12 kernel.org avec la config Debian de ce même kernel
sans rien toucher, j'obtiens une erreur du makefile sans explications
sur l'origine du souci :

  CC [M]  fs/xfs/xfs_acl.o
  CC [M]  fs/xfs/xfs_sysctl.o
  CC [M]  fs/xfs/xfs_ioctl32.o
  CC [M]  fs/xfs/xfs_pnfs.o
  LD [M]  fs/xfs/xfs.o
  AR      fs/built-in.a
debian/rules:4 : la recette pour la cible « build » a échouée
make[2]: *** [build] Erreur 2
dpkg-buildpackage: erreur: debian/rules build a produit une erreur de
sortie de type 2
scripts/package/Makefile:71 : la recette pour la cible « deb-pkg » a échouée
make[1]: *** [deb-pkg] Erreur 2
Makefile:1357 : la recette pour la cible « deb-pkg » a échouée
make: *** [deb-pkg] Erreur 2


- partir du package source du 4.19.12 Sid avec le répertoire debian venu
du git des mainteneurs du kernel chez Debian sans changer aucune option,
je devrais donc être en mesure de recompiler une image identique à celle
en Sid pour cette version mais j'obtiens sur une stretch :

dpkg-source: info: construction de linux-4.19.12+ en utilisant le
./linux-4.19.12+_4.19.12+.orig.tar.gz existant
patching file Makefile
Hunk #1 FAILED at 1024.
Hunk #2 FAILED at 1097.
Hunk #3 FAILED at 1104.
3 out of 3 hunks FAILED
patching file arch/x86/um/sysrq_64.c
Hunk #1 FAILED at 8.
Hunk #2 FAILED at 16.
2 out of 2 hunks FAILED
patching file arch/ia64/kernel/process.c
Reversed (or previously applied) patch detected!  Skipping patch.
2 out of 2 hunks ignored
patching file arch/powerpc/kernel/process.c
Hunk #1 FAILED at 39.
Hunk #2 FAILED at 1359.
2 out of 2 hunks FAILED
patching file kernel/hung_task.c
Hunk #1 FAILED at 17.
Hunk #2 FAILED at 109.
2 out of 2 hunks FAILED
patching file kernel/printk/printk.c
Hunk #1 FAILED at 45.
Hunk #2 FAILED at 3282.
2 out of 2 hunks FAILED
dpkg-source: info: le patch ne s'applique pas proprement (« fuzz »), ou
est mal-formé
dpkg-source: info: si le correctif « debian/version.patch » est
correctement appliqué par quilt, utiliser « quilt refresh » pour le
mettre à jour
dpkg-source: erreur: LC_ALL=C patch -t -F 0 -N -p1 -u -V never -E -b -B
.pc/debian/version.patch/ --reject-file=- <
debian-kernel.orig.xUd26O/debian/patches/debian/version.patch a produit
une erreur de sortie de type 1
dpkg-buildpackage: erreur: dpkg-source -i.git -b debian-kernel a produit
une erreur de sortie de type 2
scripts/package/Makefile:71 : la recette pour la cible « deb-pkg » a échouée
make[1]: *** [deb-pkg] Erreur 2
Makefile:1372 : la recette pour la cible « deb-pkg » a échouée
make: *** [deb-pkg] Erreur 2


J'ai retourné le web à la recherche de la bonne méthode pour faire tout
cela, les docs Debian n'ont pas changé sur les kernel courrant et rien
sur comment faire pour compiler comme les mainteneurs pour les derniers
kernels.

Du coup j'en viens à vous solliciter car je suis coincé.

Merci par avance pour vos pistes

Attachment: signature.asc
Description: OpenPGP digital signature

Répondre à