[dtrace-discuss] RES: Process in LCK / SLP (Please)
Kleyson Rios
kleyson at administracao.go.gov.br
Thu Apr 17 04:49:22 PDT 2008
Tanks everybody.
I will try to do what you guys said.
When I get new issues I post again.
Regards,
Kleyson Rios.
-----Mensagem original-----
De: Jarod Jenson [mailto:jarod at aeysis.com]
Enviada em: quarta-feira, 16 de abril de 2008 16:56
Para: Peter B. Kessler
Cc: Kleyson Rios; dtrace-discuss at opensolaris.org
Assunto: Re: [dtrace-discuss] Process in LCK / SLP (Please)
Peter B. Kessler's email at 4/16/08 2:01 PM, said:
> Michael Schuster wrote:
>> Kleyson Rios wrote:
>>> Hi,
>>>
>>> I really need help.
>>>
>>> How can i identify why my process are 100% in LCK and SLP ?
>>>
>>> PID USERNAME USR SYS TRP TFL DFL LCK SLP LAT VCX ICX SCL SIG
PROCESS/LWPID
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 30 0 18 0 java/28
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 2 0 1 0 java/94
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 3 0 1 0 java/93
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 1 0 0 0 java/100
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 1 0 1 0 java/18
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/49
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/47
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/48
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 0 0 0 0 java/32
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 0 0 0 0 java/31
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 0 0 0 0 java/30
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 0 0 0 0 java/29
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 0.0 100 0.0 0 0 0 0 java/27
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/26
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/25
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/24
>>> 6769 root 0.0 0.0 0.0 0.0 0.0 100 0.0 0.0 0 0 0 0 java/23
>> from the prstat man-page:
>>
>> LCK
>>
>> The percentage of time the process has spent waiting for
>> user locks.
>>
>> SLP
>>
>> The percentage of time the process has spent sleeping.
>>
>> it looks like your processes have deadlocked themselves - not much one
can
>> do without knowledge about what they're actually doing and access to the
>> source code. I'd talk to the people developing this app.
>>
>> Michael
>
> If it is a deadlock, and if it is a recent Java virtual machine, then
> you should be able to connect to it with jconsole (from the same directory
> where you get your java command), go to the "Threads" tab and use the
> "Detect Deadlock" button to get a thread stack dump showing where you
> have a cycle among your Java-level locks.
>
> ... peter
> _______________________________________________
> dtrace-discuss mailing list
> dtrace-discuss at opensolaris.org
>
*Highly* unlikely it is a deadlock. Insanely, Solaris charges time in
condition wait ([pthread_]cond_wait or lwp_cond_wait) as lock time. This
has never made sense to me, and I have yet to wield a big enough stick
to get it fixed.
Take either a Java thread dump or a pstack(1) dump. If a Java dump, you
will be in Object.wait (or similar) or sleep(). If a pstack(1), you will
be in some form of cond_wait.
If it really is a deadlock (and I'll buy you a beer if it is because I
am sure it isn't), Peter's suggestion is the way to go.
As for sleep, the threads are tired. Long day of garbage collection I
suppose. Seriously though, they have no (or very little) work to do
since the top thread is 100% sleep but made 18 system calls (rounding
error).
Thanks,
Jarod
More information about the dtrace-discuss
mailing list