Kernel 2.4.0 und supermount :(

Post Reply
Message
Author
Romanofski

Kernel 2.4.0 und supermount :(

#1 Post by Romanofski »

Kleines Problem. Ich benutze Linux Mandrake 7.2.
Hab mir den neuen Kernel gezerrt, compiliert und arbeite jetzt mit dem. Dummerweise hab ich jetzt kein supermount mehr da das noch nicht mit implementiert ist :( Über freshmeat.net hab ich auf der Homepage den supermount patch gezogen aber konnte damit den Kernel nicht patchen :(
Die Datei ist in Form von supermount-bla.zip. und das zcat funtzt nicht. Ich hab die Datei dann entpackt, aber selbst ein normales cat supermountbla.diff | patch -p0 funtzt nett.
Wäre schön wenn jemand mal einen tip geben könnte :)

Danke, Roman

Sebastian Ude

Re: Kernel 2.4.0 und supermount :(

#2 Post by Sebastian Ude »

Was passiert dem beim patchen ?

Fragt patch sofort welche File er patchen soll ? Dann kann das z.B. daran liegen, dass du keinen Symlink von linux auf linux-2.4.0 gemacht hast, die *.diff file aber so aufgebaut ist dass patch erwartet linux-2.4.0/*-Files patchen zu können ...
Oder wenn es daran nicht liegt ... du sagtest was von -p0, bedeutet dann natürlich du darfst nicht im "linux"-Verzeichnis sein, sondern musst dich im übergeordneten befinden.

Oder, fängt patch schon an zu patchen, Meldet dan etwas ala "Hunk xxx not succeeded" und schreibt *.rej-Files ? Dann sind die zu patchenden Files wohl so umfangreichend geändert wurden, dass patch mit seinem Latein auch am Ende ist. Ein Grund für sowas ist, dass der Patch eigentlich gegen Kernel-Version xxx ist, du aber eine ältere oder eine neuere hast und die zu patchenden Files eben zum Teil ziemlich verändert wurden, und eben nicht nur der Inhalt von Zeile X nun 3 Zeilen tiefer zu finden ist (sowas erkennt Patch und arbeitet trotzdem).

Oder passiert sonst irgendwas ... sagt patch etwas a'la "only garbage found in patchfile" ? Dann ist die *.diff-File vermutlich doch kein diff output text. Ein cat aufs Terminal oder ein file sollte Aufschluss geben. Vielleicht ist das Teil ja doch noch mit gzip o.ä. komprimiert, und nur die Endung durch umbenennen etc. futsch gegangen ...

Hachje, sei mal etwas aufschlussreicher und sag halt was passiert ...

Romanofski

Re: Kernel 2.4.0 und supermount :(

#3 Post by Romanofski »

also.. die Datei liegt im /usr/src
dann rufe ich den patch auf und raus kommt:

cat supermount-0.5.3-2.4.0.diff | patch -p0
can't find file to patch at input line 4
Perhaps you used the wrong -p or --strip option?
The text leading up to this was:
--------------------------
|diff -rNu --exclude-from=exclude linux-2.4.vanilla/drivers/cdrom/cdrom.c linux-2.4/drivers/cdrom/cdrom.c
|--- linux-2.4.vanilla/drivers/cdrom/cdrom.c Sun Jan 14 17:09:06 2001
|+++ linux-2.4/drivers/cdrom/cdrom.c Sun Jan 14 17:28:04 2001
--------------------------
File to patch:

und nun??

Sebastian Ude

Re: Kernel 2.4.0 und supermount :(

#4 Post by Sebastian Ude »

ln -s linux linux-2.4 ...

Und dann klappts auch mit dem Patchen ...

Romanofski

Re: Kernel 2.4.0 und supermount :(

#5 Post by Romanofski »

Der Symlink besteht bereits :(
/usr/src/linux -> linux-2.4.0

Jochen

Re: Kernel 2.4.0 und supermount :(

#6 Post by Jochen »

Nimm -p1 statt -p0.

stephan
Posts: 427
Joined: 05. Aug 1999 12:52
Location: nähe Köln
Contact:

Re: Kernel 2.4.0 und supermount :(

#7 Post by stephan »

Hi !

> Nimm -p1 statt -p0.

Wann nimmt man eigentlich welche Option ? Ich bin auch noch nicht ganz dahinter gestiegen.

Danke ! Stephan !

Jochen

Re: Kernel 2.4.0 und supermount :(

#8 Post by Jochen »

Ach Quark, ich sollte denken vor'm posten!

Sorry, -p1 statt -p0 war in dem Zusammenhang Quatsch. Allerdings hättest Du ein "cd linux-2.4.0; patch -p1 <../supermount*.diff" machen können...

Aber die Ursache ist viel einfacher. Der Patch erwartet ein Verzeichnis namens linux-2.4, du bietest aber nur linux-2.4.0 an. Dementsprechend findet er nix, was er patchen könnte, und das sagt er denn auch. Mach (noch) einen Link auf linux-2.4 und dann sollte es das tun - mit -p0!

Und was den Unterschied zwischen -p0 und -p1 betrifft, so ist die man-Page zu patch da eigentlich sehr ausführlich. "-p0" bedeutet "Verwende die Dateinamen exakt so, wie sie im Patch stehen". -p<i>x</i> bedeutet "Lösche alles bis zum <i>x</i>ten Slash und verwende den Dateinamen so". Deswegen hätte es so wie oben angeführt funktioniert: In das linux-Verzeichnis wechseln und patch anweisen, das erste Verzeichnis in den Dateinamen im Patch zu ignorieren.

Alle Klarheiten beseitigt? <img src="http://www.pl-forum.de/UltraBoard/Images/Happy.gif" border="0" align="middle">

Romanofski

Re: Kernel 2.4.0 und supermount :(

#9 Post by Romanofski »

Nein-leider nicht :(
Folgendes Problem. Wenn ich den Kernel mit dem supermount patche, hab ich keinen Menüpunkt für supermount :( Dann hab ich den Kernel nochmal neu entpackt, mit supermount gepatcht und da hatte ich den menüpunkt. Danach den Reiserfs Patch gemacht und dann hatte ich zwar den Supermount Eintrag, aber keinen Reiserfs Eintrag :( Also scheinbar entweder oder, oder ich mach was falsch .
Hier ist der patch output wenn ich den Kernel schon mit ReiserFS gepatcht hab :(

cat supermount-0.5.3-2.4.0.diff | patch -p0
patching file linux-2.4/drivers/cdrom/cdrom.c
patching file linux-2.4/drivers/ide/ide-cd.c
patching file linux-2.4/drivers/ide/ide-disk.c
patching file linux-2.4/drivers/ide/ide-floppy.c
patching file linux-2.4/drivers/ide/ide.c
patching file linux-2.4/drivers/scsi/sd.c
patching file linux-2.4/fs/Config.in
Hunk #1 FAILED at 7.
1 out of 1 hunk FAILED -- saving rejects to file linux-2.4/fs/Config.in.rej
patching file linux-2.4/fs/Makefile
Hunk #1 succeeded at 61 with fuzz 1 (offset 1 line).
patching file linux-2.4/fs/block_dev.c
patching file linux-2.4/fs/dcache.c
patching file linux-2.4/fs/inode.c
Hunk #1 succeeded at 856 (offset 9 lines).
patching file linux-2.4/fs/namei.c
patching file linux-2.4/fs/read_write.c
patching file linux-2.4/fs/super.c
patching file linux-2.4/fs/supermount/Makefile
patching file linux-2.4/fs/supermount/dir.c
patching file linux-2.4/fs/supermount/file.c
patching file linux-2.4/fs/supermount/inode.c
patching file linux-2.4/fs/supermount/namei.c
patching file linux-2.4/fs/supermount/shadow.c
patching file linux-2.4/fs/supermount/super.c
patching file linux-2.4/include/linux/dcache.h
patching file linux-2.4/include/linux/fs.h
Hunk #3 succeeded at 416 (offset 1 line).
Hunk #4 succeeded at 464 (offset 1 line).
Hunk #5 succeeded at 617 (offset -28 lines).
Hunk #6 succeeded at 697 (offset 2 lines).
Hunk #7 succeeded at 747 (offset -27 lines).
Hunk #8 succeeded at 841 with fuzz 1 (offset 2 lines).
Hunk #9 succeeded at 1139 (offset 20 lines).
Hunk #10 succeeded at 1137 (offset 2 lines).
patching file linux-2.4/include/linux/ide.h
patching file linux-2.4/include/linux/supermount_fs.h
patching file linux-2.4/include/linux/supermount_fs_i.h
patching file linux-2.4/include/linux/supermount_fs_sb.h
patching file linux-2.4/kernel/ksyms.c
Hunk #1 succeeded at 157 with fuzz 1.
Hunk #2 succeeded at 256 (offset 1 line).

Danke :)

Sebastian Ude

Re: Kernel 2.4.0 und supermount :(

#10 Post by Sebastian Ude »

Tja.

Der supermount-patch verändert einige Files die auch der reiserfs-patch verändert, da kommt sich was in die Quere.

Entweder selber an den Code dransetzen, oder auf eins von beiden Verzichten.

Romanofski

Re: Kernel 2.4.0 und supermount :(

#11 Post by Romanofski »

hm.. super :) aber welches :)??
Naja.. ich werde abwarten müssen. Denke mal das noch gefixt wird, vor allem da ja reiserfs jetzt in den neuen Kernel mit reinkommt. Supermount ist ein nettes Feature, möchte es nicht missen (man hatte zwar früher tools zum schnellen mounten, aber naja.. is halt neu :)

Danke Dir trotzdem :) Roman

rajko bock

Re: Kernel 2.4.0 und supermount :(

#12 Post by rajko bock »

hallo,

schau mal bitte z.b. bei > http://ftp.net.uni-c.dk/pub/linux/mandr ... rake/RPMS/ > rein. dort findest du rpm-pakete. kernel*2.4.0-5mdk*

mfg
rajko

Post Reply