fhem verursacht 100% CPU-Auslastung durch select

820 views
Skip to first unread message

Boris Neubert

unread,
Aug 7, 2011, 1:42:53 PM8/7/11
to FHEM users
Hallo,

in letzter Zeit sehe ich öfters das Problem, daß fhem Amok läuft und
dauerhaft 100% CPU-Auslastung verursacht. Heute habe ich versucht, mir
das näher anzusehen, und ein strace auf den Prozess losgelassen. Ich
sehe dort

...
select(80, [4 5 6 7 12 21 75], NULL, NULL, {15, 25241}) = 1 (in [7],
left {15, 25225})
select(80, [4 5 6 7 12 21 75], NULL, NULL, {15, 24904}) = 1 (in [7],
left {15, 24888})
select(80, [4 5 6 7 12 21 75], NULL, NULL, {15, 24563}) = 1 (in [7],
left {15, 24547})
select(80, [4 5 6 7 12 21 75], NULL, NULL, {15, 24244}) = 1 (in [7],
left {15, 24227})
select(80, [4 5 6 7 12 21 75], NULL, NULL, {15, 23932}) = 1 (in [7],
left {15, 23916})
...

ohne Ende. Gibt es eine Möglichkeit herauszufinden, warum das passiert?

Viele Grüße
Boris

Rudolf Koenig

unread,
Aug 7, 2011, 5:17:21 PM8/7/11
to fhem-...@googlegroups.com
> ohne Ende. Gibt es eine M�glichkeit herauszufinden, warum das passiert?

Ich wuerde mit ls -l /proc/<fhem-pid>/fd anfangen, und feststellen was 7 ist
(war?). Dessen Modul hat wahrscheinlich vergessen 7 aus %selectlist zu
entfernen.

Boris Neubert

unread,
Aug 8, 2011, 3:31:42 PM8/8/11
to fhem-...@googlegroups.com
Am 07.08.2011 23:17, schrieb Rudolf Koenig:
>> ohne Ende. Gibt es eine Möglichkeit herauszufinden, warum das passiert?

>
> Ich wuerde mit ls -l /proc/<fhem-pid>/fd anfangen, und feststellen was 7 ist
> (war?). Dessen Modul hat wahrscheinlich vergessen 7 aus %selectlist zu
> entfernen.
>

# ps -e | grep fhem
1643 ? 1-01:40:10 fhem.pl
# strace -p 1643
select(24, [5 6 7 12 21], NULL, NULL, {21, 329181}) = 1 (in [7], left
{21, 329165})
select(24, [5 6 7 12 21], NULL, NULL, {21, 328801}) = 1 (in [7], left
{21, 328784})
select(24, [5 6 7 12 21], NULL, NULL, {21, 328433}^C <unfinished ...>
Process 1643 detached
# ls -l /proc/1643/fd/7
lrwx------ 1 root root 64 Aug 7 16:41 /proc/1643/fd/7 -> socket:[4895]
# netstat -e | grep 4895
tcp 9 0 vserver1.home.neu:40640 avrnetio.hom:sms-rcinfo
VERBUNDEN root 4895

AHA, avrnetio.
Autor: ich :-#

Ich sollte bald mal 90_IOWrite.pm angehen, damit alle Programmierfehler
bei I/O im selben Modul sind ;-)

Danke für den Tipp und viele Grüße
Boris

Reply all
Reply to author
Forward
0 new messages