Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 23 May 2008 10:09:31 +0300
From:      Andriy Gapon <avg@icyb.net.ua>
To:        freebsd-threads@freebsd.org
Subject:   Re: RELENG_7 libthr: _umtx_op -1 errno 60 Operation timed out
Message-ID:  <48366DAB.2000200@icyb.net.ua>
In-Reply-To: <48299715.8010303@icyb.net.ua>
References:  <48299715.8010303@icyb.net.ua>

next in thread | previous in thread | raw e-mail | index | archive | help
on 13/05/2008 16:26 Andriy Gapon said the following:
> I observe the following issue with some programs (e.g. firefox) from
> time. A completely idle program suddenly starts using a lot of CPU and
> sometimes memory too. For example, minimized firefox with no pages open.
> Restarting the program make the behavior go away.
> On one such occasion I ran ktrace on firefox and I saw a lot of messages
> like the following in kdump:
>  13974 firefox-bin RET   _umtx_op -1 errno 60 Operation timed out
> Attaching with gdb I also saw a quite strange stack (unfortunately
> firefox and the libs are without debug). I didn't save it but it looked
> something like the following:
> __error()
> ??
> ??
> pthread_cond_init()
> ??
> 
> I wonder what could be a cause of this.
> Could it be some sort of resource limitation?

Here is more details from userland part.
I re-built libthr with debugging and here's a typical stack trace for 
the described above condition:
0x28ad26b3 in _umtx_op_err () at 
/system/src/lib/libthr/arch/i386/i386/_umtx_op_err.S:36
36      SYSCALL_ERR(_umtx_op)
(gdb) bt
#0  0x28ad26b3 in _umtx_op_err () at 
/system/src/lib/libthr/arch/i386/i386/_umtx_op_err.S:36
#1  0x28ad22bd in _thr_ucond_wait (cv=0x8209860, m=0x8209840, 
timeout=0x0, check_unparking=1) at 
/system/src/lib/libthr/thread/thr_umtx.c:129
#2  0x28ad0609 in cond_wait_common (cond=0x8208108, mutex=0x820810c, 
abstime=0x0, cancel=1) at /system/src/lib/libthr/thread/thr_cond.c:204
#3  0x28ad06e8 in __pthread_cond_wait (cond=0x8208108, mutex=0x820810c) 
at /system/src/lib/libthr/thread/thr_cond.c:228

I am a newbie in this area - what is the difference between 
_pthread_cond_wait and __pthread_cond_wait? And _X vs __X in general?

-- 
Andriy Gapon



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?48366DAB.2000200>