Hartmut Figge wrote:
Ich hab die letzten 2 Tage nen Regentanz aufgeführt. Den Erfolg siehst du ja (zumindest in Mannheim+Umgebung). Vielleicht hast du ja jetzt Zeit und bist physisch bereit, dir nochmal den Kopf über mein Problem zu zerbrechen ;-)Thorsten, es ist doch viel zu heiß zum Nachdenken; warum tust Du mir diese interessante Problem an?
Äh....soso. Also alles was ich verstanden hab, is, dass da ne queue ist, ein caller und ein counter, der wiederum aus nem active und nem waiting part besteht. Ja und wenn man dort ankommt, werden wohl die 'gelockten' Prozesse aus der queue ablaufen...oder so. Der Rest der Dateien ist ja auch bloß noch C-Code. Keine weiteren Kommentare.Schau mal nach in /usr/src/kernel-source-welche_nummer_auch_immer/lib/rwsem.c und .../rwsemspinlock.c. Auszug: /* * handle the lock being released whilst there are processes blocked on it that can now run * - if we come here, then: * - the 'active part' of the count (&0x0000ffff) reached zero but has been re-incremented * - the 'waiting part' of the count (&0xffff0000) is negative (and will still be so) * - there must be someone on the queue * - the spinlock must be held by the caller * - woken process blocks are discarded from the list after having flags zeroised */
Nachforschen für mich = google. Dort war aber auch nix zu finden, was ich versteh - es war aber auch nicht sooo viel was ich nicht verstanden hab'. Es war also allgemein nicht viel :-)Als Anhaltspunkt für weiteres Nachforschen ;)
Sorry, aber ich bin erst seit ein paar Monaten ein Jünger der Linuxgemeinde und noch (lange) nicht so weit im Quellcode des Kernels 'rumzuhacken...
Gruß, Thorsten -- Zum AUSTRAGEN schicken Sie eine Mail an debian-user-german-request@lists.debian.org mit dem Subject "unsubscribe". Probleme? Mail an listmaster@lists.debian.org (engl)