800-as load average, general protection fault

Fórumok

van egy ilyen a logban:



Dec 10 10:00:01 servername kernel: general protection fault: 0000 [1] SMP 
Dec 10 10:00:01 servername kernel: CPU 3Dec 10 10:00:01 servername kernel: Pid: 17181, comm: ps Tainted: PF  U   
(2.6.5-7.191-smp SLES9_SP2_BRANCH-200506281458560000)
Dec 10 10:00:01 servername kernel: RIP: 0010:[<ffffffff80177e9b>] <ffffffff80177e9b>{get_user_pages+267}
Dec 10 10:00:01 servername kernel: RSP: 0018:000001005acbfd58  EFLAGS: 00010202
Dec 10 10:00:01 servername kernel: RAX: 0000cda1f000cff8 RBX: 00000000ffffe000 RCX: 0000010000000000
Dec 10 10:00:01 servername kernel: RDX: 0000cca1f000cff8 RSI: 000ffffffffff000 RDI: ffffffff803d4f00
Dec 10 10:00:01 servername kernel: RBP: 0000010056e34c00 R08: 0000000000000000 R09: 0000000000000001
Dec 10 10:00:01 servername kernel: R10: 6c2f7273752f006e R11: 73752f3d5f00746f R12: 0000000000000000
Dec 10 10:00:01 servername kernel: R13: 0000000000000000 R14: 000001001a57a470 R15: 0000000000000001
Dec 10 10:00:01 servername kernel: FS:  0000002a9588e6e0(0000) GS:ffffffff80563000(0000) 
knlGS:0000000000000000
Dec 10 10:00:01 servername kernel: CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Dec 10 10:00:01 servername kernel: CR2: 0000002a955f7000 CR3: 00000000bfe29000 CR4: 00000000000006e0
Dec 10 10:00:01 servername kernel: Process ps (pid: 17181, threadinfo 000001005acbe000, task 0000010075343300)
Dec 10 10:00:01 servername kernel: Stack: 000001005b9a09a0 ffffffff8019c49b 000001005acbfe98 0000000000000000 
Dec 10 10:00:01 servername kernel:        000fffffeff80106 0000000000000106 000000105acbfde8 00000000ffffe000 
Dec 10 10:00:01 servername kernel:        0000000000000001 000001005acbfe18 
Dec 10 10:00:01 servername kernel: Call Trace:<ffffffff8019c49b>{real_lookup+123} 
<ffffffff80145423>{access_process_vm+179} 
Dec 10 10:00:01 servername kernel:        <ffffffff801c4d02>{proc_pid_cmdline+146} 
<ffffffff801c418f>{proc_info_read+111} 
Dec 10 10:00:01 servername kernel:        <ffffffff8018d184>{vfs_read+244} <ffffffff8018d3dd>{sys_read+157} 
Dec 10 10:00:01 servername kernel:        <ffffffff80189dd7>{sys_open+231} <ffffffff80110794>{system_call+124} 
Dec 10 10:00:01 servername kernel:        
Dec 10 10:00:01 servername kernel: 
Dec 10 10:00:01 servername kernel: Code: 48 8b 00 48 c1 eb 09 81 e3 f8 0f 00 00 48 21 f0 48 01 d8 48 
Dec 10 10:00:01 servername kernel: RIP <ffffffff80177e9b>{get_user_pages+267} RSP <000001005acbfd58>
Dec 10 10:16:04 servername -- MARK --
Dec 10 10:35:34 servername kernel:  fown: signal 29, pid 10793

free -m:
             total       used       free     shared    buffers     cached
Mem:          3940       3913         27          0        114       2090
-/+ buffers/cache:       1708       2232
Swap:         8193        191       8002

sok processz van:
ls -l /proc | wc -l
3935

ulimit -a
core file size        (blocks, -c) 0
data seg size         (kbytes, -d) unlimited
file size             (blocks, -f) unlimited
max locked memory     (kbytes, -l) unlimited
max memory size       (kbytes, -m) unlimited
open files                    (-n) 1024
pipe size          (512 bytes, -p) 8
stack size            (kbytes, -s) unlimited
cpu time             (seconds, -t) unlimited
max user processes            (-u) 40960
virtual memory        (kbytes, -v) unlimited

uname -a
Linux 2.6.5-7.191-smp #1 SMP Tue Jun 28 14:58:56 UTC 2005 x86_64 x86_64 x86_64 GNU/Linux
uptime
 10:52am  up 235 days 11:27,  2 users,  load average: 895.98, 893.49, 886.30

ps 132-t tud megszámolni, aztán lehal. w, top szintén nem tud futni.
fs nincs megtelve, de olyan parancs ami processzel kapcsolatos mind meghal.
Mit lehet ilyenkor tenni?

Hozzászólások

cronban nincs valami okosság?
Kereken 10órakor hal meg a cucc :P

van, 15 percenként run-crons, 10 percenként kill ssh stucked sessions (openssh bug workaround), meg 10kor indul cronból az nmon.
mondjuk pont egy ps volt ami lehalt és ps van a scriptünkben, ami ennyike:
ssh_stucked_session_kill.sh


#!/bin/bash

ps -ef | grep sshd | fgrep '[pam]' | awk '{print $2}' | sort -r | xargs kill 2> /dev/null

/etc/init.d/sshd status > /dev/null

if [ $? == 0 ] 
  then
    exit 0
  else
    /etc/init.d/sshd restart
fi

viszont ezek hónapok óta futnak, kivéve nmon, de úgy nézem annak is növekszik a logja, szal dolgozik.

uptime 
  4:27pm  up 235 days 17:01,  3 users,  load average: 998.03, 997.51, 994.97

megy ez ezer fölé?

közben kiderült, h usb echi modul kernel Oops-ot csinál, szám szerint 65 lett rmmod és modprobe után.

ennek egyszeru oka van: valahol meghalt az a valami, ezert egy process D-s lett (man ps), ennek hatasara pl a ps is D-be kerul, aztan a cronod indit megegy ps-t, az is D-be kerul, de ezek mind beleszamitanak a loadba, annak ellenere hogy nem csinalnak semmi.

asszem igy maragyaraztakiarpi...
--
A vegtelen ciklus is vegeter egyszer, csak kelloen eros hardver kell hozza!