Compilation kernel Debian ou vanilla

Le
Wallace
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--S7PdDfq4Hqz5aTFnCW1llyEB4slGy9s9Q
Content-Type: multipart/mixed; boundary="bXxQ4j9Y9fyJ2PrGIl1vCPN4Z9HhvjSns";
protected-headers="v1"
From: Wallace <wallace@morkitu.org>
To: debian-user-french@lists.debian.org
Message-ID: <e715a99c-9cca-4634-9b51-51d0e1217376@morkitu.org>
Subject: Compilation kernel Debian ou vanilla

--bXxQ4j9Y9fyJ2PrGIl1vCPN4Z9HhvjSns
Content-Type: multipart/alternative;
boundary="1B1C4EDC64E0D43BC1227091"
Content-Language: fr

This is a multi-part message in MIME format.
--1B1C4EDC64E0D43BC1227091
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

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 serve=
ur ou
desktop avec le minimum nécessaire, désactiver des fonctionnali=
tés ou
drivers inutiles, mettre des options qui m'intéressent, bref tou=
t
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 .co=
nfig 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 ke=
rnel
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 « d=
eb-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 (« fuz=
z »), 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 « d=
eb-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 po=
ur faire tout
cela, les docs Debian n'ont pas changé sur les kernel courrant et ri=
en
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


--1B1C4EDC64E0D43BC1227091
Content-Type: text/html; charset=utf-8
Content-Transfer-Encoding: quoted-printable

<html>
<head>

<meta http-equiv="content-type" content="text/html; charset=UTF=
-8">
</head>
<body text="#000000" bgcolor="#FFFFFF">
<p><font face="Helvetica, Arial, sans-serif">Bonjour à tous,</=
font></p>
<p><font face="Helvetica, Arial, sans-serif">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</font>, mettre des optio=
ns
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</p>
<p>Ce message est très peu documenté, je compile pourtant b=
ien un
kernel 64 bits, il semble que lorsque l'image dépasse les 4,8M=
o
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 b=
ien
fonctionner. Ce qui m'étonne c'est de voir les kernels Debian
dépasser sans soucis cette taille de vmlinuz et fonctionner
normalement.</p>
<p>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 :</p>
<p>- reprendre des fichiers de configurations Debian fonctionnels
pour les utiliser comme base pour recompiler la même version s=
ans
succès toujours la même erreur<br>
</p>
<p>- 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 :</p>
<p>  CC [M]  fs/xfs/xfs_acl.o<br>
  CC [M]  fs/xfs/xfs_sysctl.o<br>
  CC [M]  fs/xfs/xfs_ioctl32.o<br>
  CC [M]  fs/xfs/xfs_pnfs.o<br>
  LD [M]  fs/xfs/xfs.o<br>
  AR      fs/built-in.a<br>
debian/rules:4 : la recette pour la cible « build=
» a échouée<br>
make[2]: *** [build] Erreur 2<br>
dpkg-buildpackage: erreur: debian/rules build a produit une erreur
de sortie de type 2<br>
scripts/package/Makefile:71 : la recette pour la cible «=
deb-pkg »
a échouée<br>
make[1]: *** [deb-pkg] Erreur 2<br>
Makefile:1357 : la recette pour la cible « deb-pkg=
» a échouée<br>
make: *** [deb-pkg] Erreur 2</p>
<p><br>
</p>
<p>- 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 versi=
on
mais j'obtiens sur une stretch : <br>
</p>
<p>dpkg-source: info: construction de linux-4.19.12+ en utilisant le
./linux-4.19.12+_4.19.12+.orig.tar.gz existant<br>
patching file Makefile<br>
Hunk #1 FAILED at 1024.<br>
Hunk #2 FAILED at 1097.<br>
Hunk #3 FAILED at 1104.<br>
3 out of 3 hunks FAILED<br>
patching file arch/x86/um/sysrq_64.c<br>
Hunk #1 FAILED at 8.<br>
Hunk #2 FAILED at 16.<br>
2 out of 2 hunks FAILED<br>
patching file arch/ia64/kernel/process.c<br>
Reversed (or previously applied) patch detected!  Skipping pat=
ch.<br>
2 out of 2 hunks ignored<br>
patching file arch/powerpc/kernel/process.c<br>
Hunk #1 FAILED at 39.<br>
Hunk #2 FAILED at 1359.<br>
2 out of 2 hunks FAILED<br>
patching file kernel/hung_task.c<br>
Hunk #1 FAILED at 17.<br>
Hunk #2 FAILED at 109.<br>
2 out of 2 hunks FAILED<br>
patching file kernel/printk/printk.c<br>
Hunk #1 FAILED at 45.<br>
Hunk #2 FAILED at 3282.<br>
2 out of 2 hunks FAILED<br>
dpkg-source: info: le patch ne s'applique pas proprement
(« fuzz »), ou est mal-formé<br>
dpkg-source: info: si le correctif « debian/version.patch=
 » est
correctement appliqué par quilt, utiliser « quilt re=
fresh » pour
le mettre à jour<br>
dpkg-source: erreur: LC_ALL=C patch -t -F 0 -N -p1 -u -V never -E=

-b -B .pc/debian/version.patch/ --reject-file=- &lt;
debian-kernel.orig.xUd26O/debian/patches/debian/version.patch a
produit une erreur de sortie de type 1<br>
dpkg-buildpackage: erreur: dpkg-source -i.git -b debian-kernel a
produit une erreur de sortie de type 2<br>
scripts/package/Makefile:71 : la recette pour la cible «=
deb-pkg »
a échouée<br>
make[1]: *** [deb-pkg] Erreur 2<br>
Makefile:1372 : la recette pour la cible « deb-pkg=
» a échouée<br>
make: *** [deb-pkg] Erreur 2</p>
<p><br>
</p>
<p>J'ai retourné le web à la recherche de la bonne mét=
hode pour
faire tout cela, les docs Debian n'ont pas changé sur les kern=
el
courrant et rien sur comment faire pour compiler comme les
mainteneurs pour les derniers kernels.</p>
<p>Du coup j'en viens à vous solliciter car je suis coincé.=
</p>
<p>Merci par avance pour vos pistes<br>
</p>
</body>
</html>

--1B1C4EDC64E0D43BC1227091--

--bXxQ4j9Y9fyJ2PrGIl1vCPN4Z9HhvjSns--

--S7PdDfq4Hqz5aTFnCW1llyEB4slGy9s9Q
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

--BEGIN PGP SIGNATURE--
Comment: GPGTools - http://gpgtools.org
Comment: GPGTools - http://gpgtools.org
Comment: GPGTools - http://gpgtools.org

iF0EARECAB0WIQQPaAAgUd6+qEZxzzMWraCLhU9OXQUCXCaVQAAKCRAWraCLhU9O
XUXvAKCH4hB4OONMVojCN8iS2gZK9FsVCwCcDz4mDy+hAS2RKQW7XLNM/mCxaKQ=
=Gmfq
--END PGP SIGNATURE--

--S7PdDfq4Hqz5aTFnCW1llyEB4slGy9s9Q--
  • Partager ce contenu :
Vos réponses
Trier par : date / pertinence
didier gaumet
Le #26503229
Le 28/12/2018 à 22:27, Wallace a écrit :
[...]
- 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 :

[...]
FAILED
[...]
ça fait des années que je n'ai pas reconstruit un noyau Linux ou BSD et
je n'ai jamais été spécialiste de la chose, mais tu es peut-être bloqué
par des dépendances de compilation (entre autres make n'est pas dans la
même version en Strech et Sid). Donc peut-être aurais-tu plus de succès
avec un environnement Sid pour construire un noyau Sid?
Mes faibles compétences en la matière ne me permettent qu'une
supposition: d'une manière ou d'une autre la déclaration des options du
noyau aurait changé à un moment donné et la tentative d'importation
d'une ancienne configuration, modifiée ou non, se solderait pas un
échec, rendant nécessaire une nouvelle configuration des options
"propre", sans antécédents?
Wallace
Le #26503347
This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--kBreT8xmd2NajDv7tyJPQNxqX5aAAB4Af
Content-Type: multipart/mixed; boundary="th2yIxHqteLDW1pYz2DFdQf02Bz9v8oYa";
protected-headers="v1"
From: Wallace To:
Message-ID: Subject: Re: Compilation kernel Debian ou vanilla
References: In-Reply-To: --th2yIxHqteLDW1pYz2DFdQf02Bz9v8oYa
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable
Content-Language: fr
Le 29/12/2018 à 11:07, didier gaumet a écrit :
Le 28/12/2018 à 22:27, Wallace a écrit :
[...]
- partir du package source du 4.19.12 Sid avec le répertoire debi an venu
du git des mainteneurs du kernel chez Debian sans changer aucune optio n,
je devrais donc être en mesure de recompiler une image identique à celle
en Sid pour cette version mais j'obtiens sur une stretch :

[...]
FAILED
[...]
ça fait des années que je n'ai pas reconstruit un noyau Linux ou BSD et
je n'ai jamais été spécialiste de la chose, mais tu es p eut-être bloqué
par des dépendances de compilation (entre autres make n'est pas da ns la
même version en Strech et Sid). Donc peut-être aurais-tu plus de succès
avec un environnement Sid pour construire un noyau Sid?
Mes faibles compétences en la matière ne me permettent qu'un e
supposition: d'une manière ou d'une autre la déclaration des options du
noyau aurait changé à un moment donné et la tentative d' importation
d'une ancienne configuration, modifiée ou non, se solderait pas un
échec, rendant nécessaire une nouvelle configuration des opti ons
"propre", sans antécédents?

Pour compiler les derniers kernel de mémoire plus haut que 4.8 il fa ut
être en Stretch minimum, j'ai néanmoins fait un test en Sid san s succès.
Pour moi si tu arrives à compiler en Stretch ça marche en stret ch et
sid, si tu compiles en sid tu auras des soucis de dépendances sur li bc
et iptables par exemple qui seront trop haut.
Avant je compilais en stretch pour Wheezy / Stretch / Sid et Ubuntu sans
soucis

--th2yIxHqteLDW1pYz2DFdQf02Bz9v8oYa--
--kBreT8xmd2NajDv7tyJPQNxqX5aAAB4Af
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
Comment: GPGTools - http://gpgtools.org
Comment: GPGTools - http://gpgtools.org
iF0EARECAB0WIQQPaAAgUd6+qEZxzzMWraCLhU9OXQUCXCiyaAAKCRAWraCLhU9O
XbX4AJwNtcug7Bq05fb2gGykT2XtpsrnRwCeLvurb0Gb1b+HKTrmXmLlZm8ghwI =EuN5
-----END PGP SIGNATURE-----
--kBreT8xmd2NajDv7tyJPQNxqX5aAAB4Af--
Poster une réponse
Anonyme