Archives


- Beowulf
- Beowulf Announce
- Scyld-users
- Beowulf on Debian

SIGPIPE in beostat_get_cpu_percent()

Many of your questions may have already been answered in earlier discussions or in the FAQ. The search results page will indicate current discussions as well as past list serves, articles, and papers.

Search

Wade Hampton wade.hampton at nsc1.net
Tue Oct 22 10:32:45 PDT 2002


G'day,

I have some simple code that makes C calls to the beostatus
library.  It was sometimes crashing with a SIGPIPE (pipe
error).  Running it in gdb resulted in trapping the error
and the traceback info below.

Basically, the code is periodically making beostat_get_cpu_percent
calls on a free node prior to scheduling on that node.

The traceback is something like the following:

    __libc_write()  ()  from /lib/i686/libc.so.6
    __DTOR_END__ ()  from /usr/lib/libbeostat.so.0
    beostat_get ()
    beostat_get_stat_cpu
    beostat_get_cpu_percent

The compter is a dual 2G XEON with Scyld 28CZ4.
The kernel is 2.4.17-0.18.18_Scyldsmp

    beostatus-2.1.7-2_Scyld
    libbeostat-0.3.3-1_Scyld
    libbeostat-devel-0.3.3-1_Scyld

Any help would be most appreciated.

For now:

1)  I'm trapping SIGPIPE

2)  I'm checking for -1 on return of all beostatus calls and repeating the
     call up to 10 times -- and terminating with error at that point.

Cheers,
--
Wade Hampton




More information about the Beowulf mailing list