Swsusp will sich nicht in den Kernel kompilieren
Swsusp will sich nicht in den Kernel kompilieren
Ich verwende den aktuellen Kernel 2.6.4 von kernel.org, der lässt sich auch problemlos bauen, alles funktioniert. Außerdem habe ich ACPI eingebaut, obwohl das für swsusp 2.0 wohl überflüssig sein soll.
Nun möchte ich swsusp einbauen. Dazu habe ich die beiden Patches von Sourceforge für den Kernel 2.6.4 heruntergeladen und den Kernel damit ohne Fehlermeldung gepatcht.
Dann gingen die Probleme los:
In der Howto von Swusp steht, dass man per menuconfig die beiden Optionen CONFIG_SOFTWARE_SUSPEND2=y und
CONFIG_SOFTWARE_SUSPEND_SWAPWRITER=y aktivieren muss. Da ich die weder in der Menüfuhrung noch in der .config gefunden habe, habe ich die beiden Zeilen einfach der .config hinzugefügt.
Wenn ich nun den Kernel auf Debianart baue und nach dem automatischen Einlesen der .config während des Kompilierens nochmal in diese Datei schaue, muss ich feststellen, dass die beiden Zeilen automatisch entfernt worden sind. Wenn der Kernel fertig gebaut ist, funktioniert dieser einwandfrei, nur leider ohne swsusp.
Wie bekomme ich es hin, dass die drin bleiben und das swsusp mit einkompiliert wird ?
Nun möchte ich swsusp einbauen. Dazu habe ich die beiden Patches von Sourceforge für den Kernel 2.6.4 heruntergeladen und den Kernel damit ohne Fehlermeldung gepatcht.
Dann gingen die Probleme los:
In der Howto von Swusp steht, dass man per menuconfig die beiden Optionen CONFIG_SOFTWARE_SUSPEND2=y und
CONFIG_SOFTWARE_SUSPEND_SWAPWRITER=y aktivieren muss. Da ich die weder in der Menüfuhrung noch in der .config gefunden habe, habe ich die beiden Zeilen einfach der .config hinzugefügt.
Wenn ich nun den Kernel auf Debianart baue und nach dem automatischen Einlesen der .config während des Kompilierens nochmal in diese Datei schaue, muss ich feststellen, dass die beiden Zeilen automatisch entfernt worden sind. Wenn der Kernel fertig gebaut ist, funktioniert dieser einwandfrei, nur leider ohne swsusp.
Wie bekomme ich es hin, dass die drin bleiben und das swsusp mit einkompiliert wird ?
Welche Patches hast du genau benutzt? Wenn Software Suspend 2 nicht in make menuconfig erscheint, hast du beim Patchen Fehler gemacht, eventuell hast du einen Patch vergessen, oder gerade einen nicht funktionierende development Patch in die Haende bekommen ... ?
Ich habe 2.6.4 mit diesen Patches:
- acpi-20040311-2.6.4.diff.bz2
- bootsplash-3.1.4-2.6.4-r3.diff
- software-suspend-linux-2.6.4-test3-whole.bz2
- software-suspend-core-2.0-whole.bz2
- software-suspend-core-2.0.0.22-incremental.bz2
Bootsplash verursacht einen Reject in keyboard.c, der jedoch einfach zu fixen ist, ansonsten applien die patches alle halbwegs sauber.
Ich habe 2.6.4 mit diesen Patches:
- acpi-20040311-2.6.4.diff.bz2
- bootsplash-3.1.4-2.6.4-r3.diff
- software-suspend-linux-2.6.4-test3-whole.bz2
- software-suspend-core-2.0-whole.bz2
- software-suspend-core-2.0.0.22-incremental.bz2
Bootsplash verursacht einen Reject in keyboard.c, der jedoch einfach zu fixen ist, ansonsten applien die patches alle halbwegs sauber.
Magic is always the best solution -- especially reliable magic.
Mir fällt grade auf, dass ich den Patch software-suspend-core-2.0.0.22-incremental.bz2 gar nicht habe, nur die beiden anderen software-suspend-patches.
Ansonsten verwende ich gar keine Patches.
Bevor ich die ganzen Versionen rauskrame, probier ich heute abend erstmal den dritten Patch einzuspielen und melde mich dann nochmal.
Danke erstmal
Ansonsten verwende ich gar keine Patches.
Bevor ich die ganzen Versionen rauskrame, probier ich heute abend erstmal den dritten Patch einzuspielen und melde mich dann nochmal.
Danke erstmal
Der 2.0.0.22 ist ein Testpatch, praktisch die neueste Version, ich kann dafuer nicht garantieren, dass er stabil laeuft. Ich hatte jedoch bisher keine Probleme damit.
Es sollte eigentlich auch alles ohne diesen Patch kompilieren, aber sicher weiss ich das nicht, weil ich's nicht ausprobiert habe. Wenn du ansonsten noch Probleme hast, kannst du auch meine gepatchten Sources probieren, du findest sie hier: http://vizzzion.org/~sebas/kernels/linu ... sp.tar.bz2
Es sollte eigentlich auch alles ohne diesen Patch kompilieren, aber sicher weiss ich das nicht, weil ich's nicht ausprobiert habe. Wenn du ansonsten noch Probleme hast, kannst du auch meine gepatchten Sources probieren, du findest sie hier: http://vizzzion.org/~sebas/kernels/linu ... sp.tar.bz2
Magic is always the best solution -- especially reliable magic.
Du hast mich inflagranti erwischt.
USB ist ein bekanntes Problem. aber zum Glueck nicht unloesbar. Du kannst mal nach den hibernate script sehen (suspend.sh), und da angeben dass die USB Module vor dem Suspenden entladen werden, und nach dem Aufwachen wieder geladen werden.
Du kannst auch Dein eigenes Script dafuer schreiben, die Sachen die du wahrscheinlich drin haben willst sind, in dieser Reihenfolge:
chvt 1; rmmod [hid, und anderen USB Krempel], echo > /proc/swsusp/activate ; modprobe [hid ...], hwclock --systohc; chvt 7
Das sollte etwas Zeit sparen in der Presuspend Phase, aber spiel einfach mal damit rum.
Viel Erfolg noch.
USB ist ein bekanntes Problem. aber zum Glueck nicht unloesbar. Du kannst mal nach den hibernate script sehen (suspend.sh), und da angeben dass die USB Module vor dem Suspenden entladen werden, und nach dem Aufwachen wieder geladen werden.
Du kannst auch Dein eigenes Script dafuer schreiben, die Sachen die du wahrscheinlich drin haben willst sind, in dieser Reihenfolge:
chvt 1; rmmod [hid, und anderen USB Krempel], echo > /proc/swsusp/activate ; modprobe [hid ...], hwclock --systohc; chvt 7
Das sollte etwas Zeit sparen in der Presuspend Phase, aber spiel einfach mal damit rum.
Viel Erfolg noch.
Magic is always the best solution -- especially reliable magic.
Auf die Gefahr hin, dass ich nerve
:
Um bootsplash nutzen zu können, brauch ich ja initrd. Ich hab folglich den Kernel mit inird-Support kompiliert und mit "make-dpkg --inird --revision=xxx" gebaut.
Im Kernel 2.6.3 gibts bekanntlich Probleme beim Installieren eines initrd-Kernel. Die habe ich wie auf http://www.debianforum.de/forum/viewtop ... c&start=15 beschrieben, umgangen. Kernel mit initrd-Support ist nun installiert, initrd.splash liegt in /boot (mit splash erzeugt) und initrd=/boot/initrd.splash habe ich meiner lilo.conf entsprechend hinzugefügt (anschließend lilo ausgeführt).
Mein Problem ist: Der Kernel 2.6.4 lässt sich einwandfrei starten, ignoriert aber komplett das initrd.splash.
Da Du ja auch den bootsplash-Patch verwendet hast, gehe ich davon aus, dass Du den Kernel samt Bootsplash ans Rennen bekommen hast.
Kannst Du mir vielleicht weiter helfen ?
![Wink :wink:](./images/smilies/icon_wink.gif)
Um bootsplash nutzen zu können, brauch ich ja initrd. Ich hab folglich den Kernel mit inird-Support kompiliert und mit "make-dpkg --inird --revision=xxx" gebaut.
Im Kernel 2.6.3 gibts bekanntlich Probleme beim Installieren eines initrd-Kernel. Die habe ich wie auf http://www.debianforum.de/forum/viewtop ... c&start=15 beschrieben, umgangen. Kernel mit initrd-Support ist nun installiert, initrd.splash liegt in /boot (mit splash erzeugt) und initrd=/boot/initrd.splash habe ich meiner lilo.conf entsprechend hinzugefügt (anschließend lilo ausgeführt).
Mein Problem ist: Der Kernel 2.6.4 lässt sich einwandfrei starten, ignoriert aber komplett das initrd.splash.
Da Du ja auch den bootsplash-Patch verwendet hast, gehe ich davon aus, dass Du den Kernel samt Bootsplash ans Rennen bekommen hast.
Kannst Du mir vielleicht weiter helfen ?
Sobald du nervst, ignorier ich den Thread einfach. ![Smile :)](./images/smilies/icon_smile.gif)
Du kannst mal meine .config durchschauen, eventuell faellt Dir was auf. Bootsplash funktioniert hier auf jeden Fall prima.
Guckstu hiero
Ich habe uebrigens *kein* initrd parameter an make-kpkg durchgereicht, meine initrd ist nur fuer die Bootsplash Sachen.
![Smile :)](./images/smilies/icon_smile.gif)
Du kannst mal meine .config durchschauen, eventuell faellt Dir was auf. Bootsplash funktioniert hier auf jeden Fall prima.
Guckstu hiero
Ich habe uebrigens *kein* initrd parameter an make-kpkg durchgereicht, meine initrd ist nur fuer die Bootsplash Sachen.
Magic is always the best solution -- especially reliable magic.