Kernel DoS (Denial of Service), kill(2) & kernel bug

Søger du et bestemt program? Mangler du et alternativ til dit Windowsprogram? Program-spørgsmål kan stilles her.
lath
Indlæg: 5095
Tilmeldt: 27. apr 2008, 02:16
IRC nickname: lars_t_h
Geografisk sted: Fyn

Kernel DoS (Denial of Service), kill(2) & kernel bug

Indlæg af lath »

Jeg har nogle seriøse problemer med Ubuntu 14.04 LTS lige nu på.

Problemet startede i Unity med Thunderbird, hvor Thunderbird skærmen bliver grå hvilket indikerer at Thunderbird ikke svarer på bruger input.
Samtidigt med den grå skærm for Thunderbird, så dukkede der konstant Apport meddelelser op.

Den slags plejer jeg at løse med at tage livet af det problematiske program, så først kørte jeg den her kommando for at finde programmets PID (Process ID):

Kode: Vælg alt

pgrep thunderbird

Der svarede med:
2218


Så kører jeg kill kommandoen, og pgrep kommandoen igen for at verificere at Thunderbird dør:

Kode: Vælg alt

kill 2218;pgrep thunderbird

Der svarede med:
2218


Ok, så en almindelig kill virker ikke?, så jeg prøver igen med en SIGKILL (-9 argumentet), som den skal dø af:

Kode: Vælg alt

sudo kill -9 2218;pgrep thunderbird

Der svarede med:
2218

Det var ikke så godt. Det resultat betyder at kernen ikke kører kill systemkaldet!

Noget senere, efter at xfce-desktop pakken var blevet installeret (99 MB download, og ekstra 372 MB diskplads er brugt) og jeg er logget ind i den desktop (XFCE):
Til at starte med dukker der Apport fejl op, men efter at have annulleret dem bliver de ikke ved med komme igen lige som i Unity.

Så finder jeg den her i syslog (i /var/log/syslog):
heidi kernel: [ 7152.101244] kernel BUG at /build/buildd/linux-3.13.0/mm/huge_memory.c:1830!

Hmm, hukommelsesbug i kernen? Det kunne godt være forklaringen på at systemkaldet, kill(2), ikke virker.
Kill(2) systemkaldet kan ses med:

Kode: Vælg alt

man 2 kill

(Tryk på q-tasten afslutter manual pageren)

Ekstra oplysninger:

Kode: Vælg alt

uname -srio

Linux 3.13.0-27-generic x86_64 GNU/Linux


/Lars
Jeg er Software ingeniør (Diplomingeniør) i Informationsteknologi og indlejede systemer, hvor indlejrede systemer er computer (microcontroller) + elektronik i for eksempel et TV, en router, en vaskemaskine og den slags