# Ständiges Einfrieren!

## spammerei

Wenn ich z.B. mit emerge --fetchonly Pakete herunterladen will, bricht er nach kurzer Zeit ab. Dann hilft nur noch ein reboot, da auch ifconfig up/down nichts bringen. Es geht gar nichts mehr, kein ping mehr. Es handelt sich um einen 8139too, der Treiber ist korrekt installiert.

Das Komische: Mit der Live-CD und net-setup eth0 geht alles, selbst wenn ich die resolv.conf in die installierte Version kopiere und dann chroote, kann ich problemlos herunterladen.

Danke im Voraus für eure Mühen

SandroLast edited by spammerei on Sat Aug 07, 2004 10:46 pm; edited 1 time in total

----------

## jwj

Benutzt du einen gepatchten Kernel?

----------

## _hephaistos_

bringt das module entladen und neuladen auch nichts?

modprobe -r <module>

modprobe <module>

----------

## UTgamer

Ich hatte ähnliche Erfahrungen. Mit gestartetem Framebuffer hätte ich das nicht sehen können.

Nach einiger Zeit (2-4Stunden). Blieb er hängen oder zeigte Fehlerscheinungen. Neue Programmstarts schlossen sich direckt wieder, falls er sich nicht direckt aufgehangen hatte. Beim herunterfahren sah ich oft Kernel Pointer 00000000 Fehler, falls er sich nicht bereits vorher aufgehangen hatte.

Durch die seit gestern verfügbaren Kernelupdates, sind aufeinmal alle Fehler futch.  :Razz: 

Hier ist etwas darüber zu finden.

http://www.heise.de/newsticker/meldung/49766

Es handelte sich um Bugs mit mehr als 4000 Zeilen Code, und er betraf ebenfalls die meisten Treiber.

Mach ein emerge sync und ziehe dir das neueste Kernelupdate. 

Ist zumindest einen Versuch wert.  :Idea: 

----------

## Neo_0815

Eine Frage, was hat ein Sicherheitsleck bei der Konvertierung von 64Bit Offsets in 32Bit Integer damit zu tun ?

Der Bug erlaubt es doch "nur" Speicherinhalte zu lesen die man eigentlich nicht lesen können sollte.

Wieso sollte da also ein NIC Treiber Probleme mit haben ?!?

MfG

----------

## spammerei

In Gnome: Wenn der Verbindungsabbruch kommt, friert GNOME total ein! Kann nix mehr machen!! HILFE!

----------

## _hephaistos_

hallo,

sieht nach einem kernel ooops aus....

das schreit nach: 

1) alles wie gewohnt starten

2) in konsole 1 gehen

3) warten

4) und kernel ooops posten!

wichtig ist: der ooops ist bei kompletten system-freezes NUR in konsole 1

oder "freezed" wirklich nur gnome? kannst du danach noch was machen, oder hilft nur noch reset?

hth,

ciao

----------

## UTgamer

Ok, das mögliche Auslesen des Speicherinhaltes ist nur die Spitze des Eisberges.

Der Hinweis im Text ist: Race Conditions, und angefangen von diesem Threat:

http://www.heise.de/security/news/foren/go.shtml?read=1&msg_id=6184032&forum_id=62291

bin ich mal auf die Suche gegangen. Das grundlegende Problem sind also "Race Conditions"

In diesem Artikel  http://lwn.net/Vulnerabilities/96389/ steht dann:

"... when handling file offset pointers".

Bei Google fand ich dann eine super deutsche Beschreibung dieses Begriffes unter http://www.oreilly.de/german/freebooks/linuxdrive2ger/irqrace.html

Dort steht dann auszugsweise: *Quote:*   

> 
> 
> Interrupts können aber einen völlig neuen Satz an Race Conditions mit sich bringen, selbst auf Einzelprozessor-Systemen. Weil ein Interrupt jederzeit auftreten kann, kann er auch mitten in beliebigem Treiber-Code ausgeführt werden. Jeder Gerätetreiber, der mit Interrupts arbeitet  und das sind fast alle  muß sich daher mit Race Conditions befassen. Aus diesem Grund schauen wir uns in diesem Kapitel Race Conditions und deren Verhinderung etwas genauer an.
> 
> Das Behandeln von Race Conditions ist einer der schwierigsten Aspekte der Programmierung, weil die damit verbundenen Fehler subtil und schwer zu reproduzieren sind. Es ist sehr schwierig festzustellen, ob es eine Race Condition zwischen Interrupt-Code und den Methoden des Treibers gibt. Der Programmierer muß große Sorgfalt walten lassen, um eine Zerstörung von Daten oder Metadaten zu vermeiden. 

 Weiter unten im Artikel ist noch eine Bemerkung dazu wenn Treiber schlafen gehen:

 *Quote:*   

> Schlafen gehen ohne Race Conditions
> 
> Eine Race Condition haben wir in dieser Betrachtung bisher ausgelassen: das Schlafengehen. Ganz allgemein können diverse Dinge zwischen dem Moment geschehen, in dem Ihr Treiber sich entschließt, schlafen zu gehen, und dem Moment, in dem sleep_on tatsächlich aufgerufen wird. Mitunter endet die Bedingung, wegen der Sie schlafen wollen, unmittelbar vor dem eigentlichen Schlafengehen, was zu einem längeren Schlafen als erwartet führt. Dieses Problem ist sehr viel allgemeiner als das der Interrupt-gesteuerten I/O; für eine effiziente Lösung braucht man etwas Wissen um die Interna von sleep_on.
> 
> ...(Beispiel)...
> ...

 

"Race Conditions" betreffen also das ganze Kernelsystem inklusive der Teiber.

Und heute ist der erste Tag seit langem, an dem ich nach dem Update keinen Kernelpointer 000000 Fehler erhalten hatte.

Daher mein Vorschlag an alle die einfrierende oder abstürzende Systeme haben, doch mal die neuen Kernelpatches auszuprobieren.

----------

## spammerei

Danke für die schnelle Hilfe.

Wie komme ich gerade in Konsole 1 und wie bekomme ich die Infos über diesen Kernel-Oops... kann gar nix mehr machen!

Als ich GNOME noch nicht hatte, konnte ich noch mit Strg+Z abbrechen, das geht aber jetzt nicht mehr...

----------

## spammerei

UTgamer: mach ich!

[update]Deine These wäre insofern stimmig, weil es mit dem CD-Kernel geht! Werde ich ausprobieren![/update]Last edited by spammerei on Sat Aug 07, 2004 10:06 pm; edited 1 time in total

----------

## _hephaistos_

 *spammerei wrote:*   

> Wie komme ich gerade in Konsole 1 und wie bekomme ich die Infos über diesen Kernel-Oops... kann gar nix mehr machen!
> 
> 

 

naja, wenn das system freezed, wird der automatisch ausgegeben...

sonst ist es auch kein ooops... 

wie lange dauerts im system, bis das system freezed? warte mindestens so lange in konsole 1

ciao

----------

## spammerei

OK, ich probiers mal! Wieso kann das System noch freezen, wenns kein oops ist?

----------

## spammerei

Habe emerge sync gemacht und in GNOME vor dem Einfrieren eine Konsole aufgemacht...leider nix

Es hat aber mit dem Netzwerk zu tun, mit abgestecktem Kabel kam mir noch kein Absturz vor bisher.

FALSCH: jetzt auch ohne NetzwerkLast edited by spammerei on Sat Aug 07, 2004 10:45 pm; edited 1 time in total

----------

## UTgamer

Das Terminalfenster in gnome ist nicht die Konsole, mit 

"Strg & Alt & F1" gleichzeitig kommst du auf die Konsole. Eine Kernel-Fehlerausgabe wird dorthin gepostet.

Und mit "Strg & Alt & F7" kommst du zurück zum XWindows System.

Führe das emerge sync von dort aus.

----------

## spammerei

Nur zur Info:

Stürzt in GNOME jetzt auch ohne Netzwerk ab. Ist also kein NW-Problem.

Oops werde ich machen.

Es sei vielleicht dazugesagt, dass ich es auf einem HP-Notebook laufen lasse, auf dem im BIOS fast keine Möglichkeiten zur Auswahl bestehen.

Beim Hochfahren kommt immer irgendeine Meldung "strange power save mode enabled?" oder so ähnlich...Last edited by spammerei on Sat Aug 07, 2004 10:50 pm; edited 1 time in total

----------

## UTgamer

Noch ein Tip:

Beende deine grafische X-Ausgabe komplett, und arbeite mal nur auf der Konsole (1).

Mit der Eingabe:

init 2 (Return und kurze Zeit später wieder return), ist dein XWindowssystem beendet. Mit der Eingabe:

init 5 kommst du wieder zu deinem grafischen Standart.

----------

## spammerei

Also, manchmal kann ich mit Strg+Alt+F1 wieder wechseln, manchmal nicht. Werde Linux wohl wegmachen müssen, ist ja kein Zustand...

----------

## UTgamer

Schon die neuen Kernelpatches probiert? Notfalls über die Boot-CD runterladen.

----------

## spammerei

Nur zur Sicherheit:

habe emerge sync gemacht und dann den Kernel neu kompiliert? Richtig so?

----------

## UTgamer

Der symbolische Link /usr/src/linux muss auf den aktuellen Kernel zeigen, den den du verwenden möchtest. 

Betrifft nicht die Genkernelversion, die .config aus dem alten Kernelverzeichnis in das neue Verzeichnis kopieren. Dann:

make dep

make clean

make bzImage

make modules

make modules_install

emerge alsa - falls du dieses verwendest

emerge nVidia oder ATI Kernels

Dann das bzImage aus /usr/src/linux[-deine-version]/arch/i386/boot

nach /boot kopieren und in /boot/grub die grub.conf auf den neuen Kernelnamen umschreiben, evtl bzImage, bei Lilo dieses neu erstellen.

Hoffe habe nichts vergessen.

----------

## Anarcho

Wenn ich das richtig sehe hast du "nur" emerge sync gemacht.

Das updated aber nur den Portage-tree, nicht den Kernel.

Du musst dann noch emerge <welchen kernel auch immer du nutzt> machen

wie z.b. emerge development-sources oder emerge gentoo-dev-sources

Dann das von UTGamer gerade erklärte durchführen.

Gruss,

Anarcho

----------

## _hephaistos_

hallo,

naja, nicht ganz. wenn er kernel 2.6 hat, dann braucht man nur "make && make modules_install"

ev. probierst du auch mal einen originalkernel von kernel.org

emerge sync bringt gar nix -> emerge -utpv world ev noch...

hth,

ciao

----------

## spammerei

Also  :Smile: 

Was soll ich jetzt eintippen?  :Wink: 

1. emerge sync ist gemacht

2. emerge kernel-2.6.7-gentoo-r11 findet er nicht

 :Smile: 

----------

## _hephaistos_

hallo,

du holst dir erst mal den aktuellsten kernel:

http://www.kernel.org/pub/linux/kernel/v2.6/linux-2.6.7.tar.bz2

danach folgendes (im groben und ganze -> mitdenken nicht vergessen! es gibt genügend kernel-howtos):

cp /usr/src/linux/.config ~/ #deine alte kernelconfig sichern

cd /usr/src

rm linux #symlink zur letzten kernelversion löschen

tar -xvjpf /pfad/zum/kernel.tar.bz2 ./ #das sollte ein dir namens linux-2.6.7 anlegen

ln -s linux-2.6.7 linux #symlink erstellen

cd linux

#ev. deine alte kernelkonfig zurückspielen, oder ganz neu anfangen....

make && make modules_install

cp arch/i386/boot/bzImage /boot/<name-des-kernels>

#alles ausführen, damit dein bootmanager den neuen kernel nimmt

reboot (&& hoffen)

hth,

ciao

----------

## _hephaistos_

achja nochwas: ich glaub nicht, dass es am kernel liegt. ich glaub eher, dass du einen kernel ooops bekommst, weil zB irgendein kernelmodule den kernel "tainted".

dh: probier mal dieses netzwerkkartenmodul fix hineinzucompilen....

hth,

ciao

----------

## UTgamer

 *hephaistos6 wrote:*   

> hallo,
> 
> naja, nicht ganz. wenn er kernel 2.6 hat, dann braucht man nur "make && make modules_install"
> 
> ev. probierst du auch mal einen originalkernel von kernel.org
> ...

 

Stimmt für 2.6  :Surprised:  , aber bitte nicht  "emerge -utpv world" ausführen.

Tippe:

```
emerge =kernel-2.6.7-gentoo-r11
```

 dann gehe nach /usr/src/ 

```
mv linux linux-old
```

 

```
ln -s linux  kernel-2.6.7-gentoo-r11
```

```
cd linux
```

 

```
make && make modules_install
```

Dann den weg wie oben beschrieben mit dem bzImage und Grub

----------

## spammerei

--- 1. Ich probier das mit dem Kernelsourcenupdaten und anschließendem Neucompilen jetzt aus! Ist das wirklich eine Möglichkeit, dass es an verbugtem Code liegt?

--- 2. Fix hineinkompiliert hatte ich es glaub ich schon mal...

Schöne Grüße

Sandro

----------

## Anarcho

In dem Thread vom UTgamer fehlt noch ein 

```

cp linux-old/.config linux/

```

vor 

cd linux

----------

## UTgamer

Danke, hatte ich vergessen.

----------

## _hephaistos_

@UTgamer: wieso kein emerge -utpv world?

----------

## UTgamer

@hephaistos6, das -u wird in vielen threads als böse bezeichnet, da es keine downgrades zulässt?

Naja gut bei einem frisch installiertem System, oder liege ich da jetzt falsch.

----------

## _hephaistos_

nein, das dacht ich mir, dass du das sagst .) damit ist groß U gemeint

also emerge -Upv world ist böse. weil -U lt. man emerge upgradeonly bedeutet...

das andere ist "update" -> nicht böse  :Smile: 

ciao

----------

## UTgamer

Das macht die Temperatur hier im Raum, ich werde gleich mal abschalten gehen und was UT zocken  :Wink: 

----------

## spammerei

Gut gemeint, aber der Kernel wars leider nicht.

----------

## _hephaistos_

wie ich es mir dachte.

poste mal ein lsmod.

und du bekommst auf konsole 1 wirklich keine ooops message?

probier mal so wenig module als möglich zu laden. wie gesagt, dieses nicht funktionierende netzwerkkartenmodule taugt mir gar nicht...

ciao

----------

## spammerei

Hallo, wie geht ein lsmod?  :Wink: 

Ich muss mich echt entschuldigen, aber ich hab erst vor einer Woche (oder so ähnlich) meine ersten Erfahrungen mit Linux gemacht.  :Wink: 

----------

## _hephaistos_

hallo :\

lsmod = ein befehl... einfach in eine konsole eingeben  :Smile: 

ciao

----------

## spammerei

8139too und nvidia

----------

## spammerei

Also seit ich 8139too deaktiviert habe (10min), hat er sich nicht mehr aufgehängt. Ich werde es weiter beobachten und das dann hier reinposten!

----------

## Holli

@ spammerei

Ich habe das selbe Problem. Allerdings liegt es bei mir devinitv nicht an meiner Intel Netzwerkkarte denn ich habe schon verschiedene Module getestet.

Was ich aber bei mir beobachten konnte war, dass sobald etwas auf der Swap Patition ausgelagert wurde das System nach einer kuzen Zeit eingefroren ist.

Poste mal bitte deine Erfahung hinsichtlich dem was ich geschrieben habe. Ich bin mal gespannt.

----------

## spammerei

Hi,

also vorweg: Abgestürzt ist er wieder, es lag nicht am NW-Modul.

Also das mit dem swap finde ich echt interessant, werde ich beobachten! swap kann man ja auch deaktivieren, oder?

----------

## spammerei

Tritt leider auch mit abgeschaltetem Swap auf.

Also:

Es liegt weder am Kernel, noch an Modules, noch am Swap.

An was dann!? ist ja schrecklich

----------

## DerMojo

Jep: swapoff

Ich würd die Swap-Partition vielleicht nochmal formatieren...

[edit] O.K., zu langsam ...  :Smile:  [/edit]

----------

## Holli

Hmm, hast du in deiner Log Datei etwas komischer über das Netzwerk stehen?

z.B. so etwas wie eth0: freeing mc frame

----------

## spammerei

Nein, leider nicht. Und auch mit deaktiviertem Netzwerkmodul tritts ja jetzt auf. Es muss also irgendwas am System sein... so ein Scheiß

----------

## Holli

WIe währe es mit CronJobs?

Das dort einer ausgeührt wird der das System killt.

----------

## spammerei

Hm, also definiert habe ich keine. Wie geht das?

---

Das Einzige, in dem ich von der Anleitung abgewichen bin, ist, dass ich noch eine Windows-Partition davor hab. Hab aber alle hdax-Nummern um eins verschoben...

----------

## Holli

Schau einfach mal in /etc/cron*

Dort sind mehre Verzeichnisse., Man die ausgeführt werden sollte sich eignetlich von selbst erklären. Schau dort einfach mal rein. Dan stehen garantiert welche drin. Sie müssen aber nicht der grund sein.

Aber falls du endekst das dein System zu immer ein bestimmten Zeit einfriert und das mit eine der Jobs übereinstimmt würde ich diese eventuell mal deaktivieren.

----------

## spammerei

Hm nein, ist nicht zu bestimmter Zeit! immer alle paar Min. nach Systemstart

----------

## Holli

Hmm, also dann fällt mir jetzt auch nicht s mehr ein!!

----------

## DerMojo

Hardware? Prozessor übertaktet? Zu warm?

----------

## spammerei

Unwahrscheinlich, Notebook von HP. Außerdem tritts mit dem ISO-Linux ja auch nicht auf...

----------

## DerMojo

Vielleicht sowas wie ACPI/APM/...

(hab da wenig Ahnung von, aber die Begriffe fallen bei komischen Problemen gerne...)

----------

## _hephaistos_

hallo again  :Smile: 

nimm doch mal kernel config von knoppix oder dergleichen...

ein programm dürfte das system nicht freezen...

liegt sicher an einem module oder so...

ciao

----------

## UTgamer

Ich hab jetzt etwas. 

Ich war ausgestiegen bei der Diskussion wegen eines sehr ähnlichen Problems!

Ich hatte meine(n) Fehler gesucht.

Angeregt durch die spezifizierte Modulfehlersuche hier in diesem Thread hab ich auf meinem System gesucht gehabt.

- Testweise verschiede Module herausgeworfen > kein Erfolg

- Ganz speziel das nVidia Modul herausgenommen gehabt, und XF86Config zurück auf "nv" > wenig Erfolg (Abstürtze/Einfrieren wurden geringer).

- Gefunden in: /lib/modules  :Exclamation: 

Nachdem ich das nvidia.o in einen selbst erstellten Ordner verschoben hatte:

/lib/modules/_video/nvidia.o

hatte lsmod (reboot incl.) das nvidia Module immer noch als geladen aber unused angezeigt. Sollte eigentlich nicht möglich sein!

Also habe ich für 2 ganze Tage einmal alle verschiedenen Kernelversionen unter /lib/modules herausgelöscht, und es gab über diese 2 Tage keinen einzigen Absturtz mehr. Seit gestern teste ich es wieder mit dem nvidia Modul und habe noch keinen Absturtz.

[Siehe meinen eigenen Hilferuf unter: https://forums.gentoo.org/viewtopic.php?t=207974]

Das also ein Betrieb mit dem alten 2.4.23 Kernel nicht abstürtzte, war wohl infolge dessen, daß alle Module im obersten (=ältesten) Verzeichnis direkt gefunden wurden.

TIP:

Lass mal nur eine einzige Kernelversion im Ordner:

/lib/modules

----------

## Neo_0815

Der Tipp ist nicht die Lösung des Problems sein.

Module werden dort nach dem Ergebnis von 'uname -r' gesucht ... dh. da geht auch nix schief.

Das kannst du mal testen indem du zum Beispiel einen Kernel mit rtc und einen ohne als Modul kompilierst, und dann mal unter beiden Kernelversionen "modprobe rtc" zu machen ... einmal gehts, einmal nicht.

Das muss an was anderem gelegen haben.

MfG

----------

## UTgamer

So hatte dies bei mir auch einwandfrei geklappt.

modprobe lädt nur die aus dem richtigen Verzeichnis.

Aber beim Hochfahren haben wohl alle Kernel den erstbesten Fund genommen. Ich hab 2 * gentoo auf dem gleichen Rechner (einmal mit ext3 und einmal mit reiser) beide haben unterschiedliche Kernel in Nutzung, aber den gleichen Fehler.

Dadurch das ich viele Treiber die ich ständig brauchte monolytisch direkt in den Kernel eingebaut hatte konnte ich überhaupt erst arbeiten. 

Irgendwie hatte der erste Fehler oder Ooops Eintrag immer mit Speicheradresse oder Swap zu tuen.

----------

## Neo_0815

Also ich habe den Fehler hier nicht ... soviel kann ich dazu nur sagen und ob nu ext3 oder reiser sollte dafür auch irrelevant sein.

Da fällt mir auf .. wieso ist dein nvidia Modul denn in /lib/modules/video ??

Das sollte doch in /lib/modules/'uname-r'/video sein ... da ist irgendwas faul bei dir ^^.

MfG

----------

## UTgamer

 *Neo_0815 wrote:*   

> Also ich habe den Fehler hier nicht ... soviel kann ich dazu nur sagen und ob nu ext3 oder reiser sollte dafür auch irrelevant sein.
> 
> Da fällt mir auf .. wieso ist dein nvidia Modul denn in /lib/modules/video ??
> 
> Das sollte doch in /lib/modules/'uname-r'/video sein ... da ist irgendwas faul bei dir ^^.
> ...

 

Das Dateisystem ist ja auch irrelevant. Ich selbst habe zu Testzwecken das Modul nvidia.o aus  /lib/modules/'uname-r'/video nach /lib/modules_video verschoben, und trotzdem hatte der Kernel es zum laden gefunden. das ist eindeutig fehlerhaft. Und diese Ooops Meldungen zum Swappen findet man in einigen Postings im Internet.

----------

## Neo_0815

Ich kann dieses Verhalten bei mir nicht nachbilden ... wenn ich das Modul entferne und nach /lib/modules schiebe, bringt mir der Kernel beim nächsten Boot ne Fehlermeldung das er das Modul nicht finden kann .... - sehr eigenartig das Verhalten.

Kannst du mal ne anleitung geben wie genau du diesen fehler provozierst - das würde mich jetzt schon mal interessieren ^^.

MfG

----------

## UTgamer

Nach dem zurückkopieren aller alten Ordner aus dem Backup in /lib/modules tritt der Fehler seltsamerweise nicht mehr auf  :Sad: .  Er lässt sich nicht mehr zurückbringen. 

Ich habe überlegt ob dies evtl. auch mit alten initrds aus dem /boot Ordner zusammenhängen könnte. Da ich 2*unterschiedliche gentoos und einmal SuSE 8.1 auf dem Rechner habe liegen dort auch schonmal unterschiedliche initrds. Ich selbst nutze sie nicht in gentoo, SuSE nutzt sie. Früher habe ich auch schonmal 'make install' zusätzlich zu 'make modules_install' mit manchen Kernelversionen ausprobiert, dann werden die initrd ja auch erstellt. In den grub Bootoptionen hatte ich sie höchstens mal angetestet und nicht auf dauer übernommen, da ich sie selbst noch nie zum laufen bekommen hatte.

----------

