Fertigen Kernel Patch integrieren

Welches Modul/Treiber für welche Hardware, Kernel compilieren...
Antworten
Alternativende
Beiträge: 2094
Registriert: 07.07.2006 18:32:05

Fertigen Kernel Patch integrieren

Beitrag von Alternativende » 09.04.2014 17:55:07

Hallo zusammen,
in Zusammenhang mit einem fiesen smbclient Bug hat mir ein Samba Entwickler einen Patch angefertigt:

https://attachments.samba.org/attachment.cgi?id=9214

Diesen muss ich nun auf den laufenden Kernel anwenden und habe bisher folgendes versucht:

Code: Alles auswählen

apt-get source linux-image-3.2.0-4-amd64
Den Patch nach

Code: Alles auswählen

/debian/patches/
kopiert.

Danach folgendes Kommando:

Code: Alles auswählen

quilt push -a; quilt add debian/patches/0001-cifs-stop-trying-to-use-virtual-circuits.patch 

Code: Alles auswählen

/usr/local/src/linux/debian/patches# quilt refresh
Patch 0001-cifs-stop-trying-to-use-virtual-circuits.patch ist leer
Ich habe keine Ahnung was ich da wo falsch oder nicht gemacht habe. Eigentlich will ich nur diesen dusseligen Patch integrieren und den Kernel mit debuild -us -uc neu bauen.

Jemand eine Idee

Alternativende
Beiträge: 2094
Registriert: 07.07.2006 18:32:05

Re: Fertigen Kernel Patch integrieren

Beitrag von Alternativende » 11.04.2014 19:07:46

Bin nun einen anderen Weg gegangen um den Fehler zu umschiffen. Ist für einen absoluten Laien nicht verantwortbar den Kernel valide zu patchen.

Colttt
Beiträge: 3012
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Fertigen Kernel Patch integrieren

Beitrag von Colttt » 11.04.2014 22:43:38

Hallo ich hab eine ähnliche Frage hab 2kernelpatches bekommen um mein WLAN anzusprechen.. Wie kann ich das nun in Debian integrieren.. ?? Schon mal danke für dir info!!
Debian-Nutzer :D

ZABBIX Certified Specialist

Colttt
Beiträge: 3012
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Fertigen Kernel Patch integrieren

Beitrag von Colttt » 12.04.2014 20:36:37

Keiner ne Idee?
Debian-Nutzer :D

ZABBIX Certified Specialist

DeletedUserReAsG

Re: Fertigen Kernel Patch integrieren

Beitrag von DeletedUserReAsG » 12.04.2014 21:24:01

An welcher Stelle scheitert’s denn?

Colttt
Beiträge: 3012
Registriert: 16.10.2008 23:25:34
Wohnort: Brandenburg
Kontaktdaten:

Re: Fertigen Kernel Patch integrieren

Beitrag von Colttt » 12.04.2014 23:09:31

Erstmal wo müssen die patches hin, wie füge ich sie ein, wie kann ich erstmal die standardconfig von Debian einlesen und anschließend selbst noch Änderungen vornehmen..
Debian-Nutzer :D

ZABBIX Certified Specialist

DeletedUserReAsG

Re: Fertigen Kernel Patch integrieren

Beitrag von DeletedUserReAsG » 12.04.2014 23:51:11

Erstmal wo müssen die patches hin, wie füge ich sie ein […]
Das hängt stark davon ab, in welcher Form die Patches vorliegen. Liegen sie direkt als ordnungsgemäßer Patch vor, tut’s der übliche, überall dokumentierte Weg.
[…] wie kann ich erstmal die standardconfig von Debian einlesen und anschließend selbst noch Änderungen vornehmen..
Nun enttäuschst du mich aber …

Benutzeravatar
habakug
Moderator
Beiträge: 4314
Registriert: 23.10.2004 13:08:41
Lizenz eigener Beiträge: MIT Lizenz

Re: Fertigen Kernel Patch integrieren

Beitrag von habakug » 13.04.2014 11:30:44

Hallo!

Ich gehe hier mal auf die ursprüngliche Frage ein, ohne jetzt genau zu wissen ob es "der übliche, überall dokumentierte Weg" ist.
Die beiden Änderungen in "/fs/cifs/sess.c" sind inzwischen schon im Kernel (Wheezy) angekommen. Da bleibt nur noch die Änderung an der "/fs/cifs/cifsglob.h", die so aussehen muss:

Code: Alles auswählen

 fs/cifs/cifsglob.h |  1 -
 1 files changed, 0 insertion(+), 1 deletions(-)
diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
--- a/fs/cifs/cifsglob.h        
+++ b/fs/cifs/cifsglob.h
@@ -348,7 +348,6 @@
        unsigned overrideSecFlg;  /* if non-zero override global sec flags */
        __u16 ipc_tid;          /* special tid for connection to IPC share */
        __u16 flags;
-       __u16 vcnum;
        char *serverOS;         /* name of operating system underlying server */
        char *serverNOS;        /* name of network operating system of server */
        char *serverDomain;     /* security realm of server */
Diesen Code als "cifs.patch" im Home von root (/root) abspeichern. Dann so weiter:

Code: Alles auswählen

# cd /root
# apt-get install linux-source
# mkdir kernel
# cd kernel
# tar xjvf /usr/src/linux-source-3.2.tar.bz2
# cp /boot/config-3.2.0-4-amd64 ~/kernel/linux-source-3.2/.config
# cd linux-source-3.2
# make clean
# patch -p1 <../../cifs.patch
patching file fs/cifs/cifsglob.h
# make deb-pkg LOCALVERSION=-cifs KDEB_PKGVERSION=1
Im Verzeichnis "/root/kernel" liegen nach einer Weile mehrere Pakete die dann mit dpkg installiert werden können.
Ich habe natürlich nicht überprüft, ob der Patch inzwischen noch Sinn macht, am besten Jeff Layton fragen.

Gruss, habakug
( # = root | $ = user | !! = mod ) (Vor der PN) (Debianforum-Wiki) (NoPaste)

Alternativende
Beiträge: 2094
Registriert: 07.07.2006 18:32:05

Re: Fertigen Kernel Patch integrieren

Beitrag von Alternativende » 14.04.2014 08:24:44

Ich denke folgende Anleitung könnte Dir helfen. Mir hat das zwar nicht geholfen, aber who knows.

http://raphaelhertzog.com/2011/07/04/ho ... -packages/

Antworten