uninterruptible sleep == unkaputtbar???
Jan-Benedict Glaw
jbglaw at lug-owl.de
Wed May 14 23:11:10 CEST 2003
On Wed, 2003-05-14 20:59:29 +0200, Stefan Ehlen <stefan_ehlen at gmx.de>
wrote in message <20030514193526.173634AB90 at dvmwest.gt.owl.de>:
> beim Experimentieren mit einer externen USB-Festplatte hatte ich das Problem,
> daß sich verschiedenen Prozesse (mount, sd_map...) festhängten. ps listet
> diese Prozesse mit process state code "D" ("uninterruptible sleep")
>
> Anscheinend hat das weitreichende Auswirkungen: ich kann den Rechner dann
> nicht mehr sauber herunterfahren, weil auch sync in "uninterruptible sleep"
> geht.
Jo.
> Mich interessiert jetzt gar nicht so sehr, wie ich diese dusselige Festplatte
> ans Arbeiten bekomme. Vielmehr interessiert mich, wie ich einen Prozess
> loswerden kann, nachdem er in "uninterruptible sleep" gegangen ist. "kill -9"
> greift leider nicht. Gibt es andere Möglichkeiten?
Garnicht mehr, außer, Du drückst auf F13 (Reset-Knopf). Ein solcher
Prozeß hat einen Aufruf in'n Kernel gemacht, der nicht mehr vollendet
werden kann. Problem: der Kernel weiß's nicht und läßt den Aufruf nicht
scheitern, sondern wartet, bis es denn dann soweit ist. Da's nie dazu
kommt, hängt der Prozeß.
Das mit dem 'kill -9' klappt zudem nicht, weil Signale einem Prozeß
immer dann zugestellt werden, wenn er entweder gerade einen
Kernel-Aufruf beendet (tut ein solcher Prozeß nicht mehr, da der Aufruf
ja _nie_ beendet wird), oder eben, wenn seine Zeitscheibe (an
Rechenzeit) abgelaufen ist und er dann das nächste mal d'rankommt. Das
passiert aber auch nicht, weil der Proßez ja keine Rechenzeit bekommt,
weil er ja im Kernel festhängt.
> Ich benutze Debian Woody mit Kernel 2.4.18-k6.
Kurzum - dieses Phänomen (genannt "stuck in D state") ist ein
Kernel-Bug, gegen den Du nur F13 antreten lassen kannst.
MfG, JBG
--
Jan-Benedict Glaw jbglaw at lug-owl.de . +49-172-7608481
"Eine Freie Meinung in einem Freien Kopf | Gegen Zensur | Gegen Krieg
fuer einen Freien Staat voll Freier Bürger" | im Internet! | im Irak!
ret = do_actions((curr | FREE_SPEECH) & ~(IRAQ_WAR_2 | DRM | TCPA));
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
URL: <http://lug-owl.de/pipermail/linux/attachments/20030514/e42dcac1/attachment.sig>
More information about the Linux
mailing list