Ich habe ein Kernelmodul, das mit der Kerneloption CONFIG_MODULE_COMPRESS_XZ erstellt wurde. Wenn ich die Datei manuell mit unxz dekomprimiere und mit xz erneut komprimiere, unterscheidet sich die neue .ko.xz-Datei nur in 5 Bytes von der ursprünglichen .ko.xz. Abgesehen davon sind die resultierenden Dateien identisch, haben dieselbe Länge usw. – siehe beigefügten Screenshot von vbindiff.
Modinfo ist in beiden .ko.xz-Dateien identisch. Dennoch weigert sich Modprobe, das neu komprimierte Modul mit „Exec-Formatfehler“ zu laden. Was ist bitte die richtige Methode zum Komprimieren eines Moduls, beispielsweise beim Kompilieren eines geänderten Moduls (die Komprimierung erfolgt in make modules_install, was beim Neukompilieren eines einzelnen Moduls keinen Sinn ergibt).
Vielen Dank,
Pawel. [1]:https://i.stack.imgur.com/pMRP3.png