On Wed, Nov 12, 2008 at 9:30 PM, Jianhua Yang <[EMAIL PROTECTED]> wrote:
> Hello,
>
> ps -ef cmd in local zones takes about 15 ~ 20 seconds randomly, but work
> perfect on the global zone. truss shows the time was spent on pollsys
> syscall (went to sleeping) after putmsg.

This is almost always slowness waiting for a name service (e.g. NIS or
LDAP).  My guess is that if you go into a directory with files owned
by a lot of different people (try /tmp or /var/tmp) and do "ls -l" you
will see similar slowness.  Also "ps -o uid -e" should be fast and "ps
-o user -e" will be slow.

> the most of syscalls made by function traced by dtrace: ioctl(), gtime(),
> read() and write(), which were issued by application processes that are all
> single-threaded, but it seems that the syscalls are not related to pollsys
> sleeping, as the ps slowness happened during the time when ioctl() call
> reached over 50000 and over 5000. there are over 40 GB freemem, cpu is
> always 80% idle; and shortlived processes took about 07 ~ 1.8 sec out of 5
> sec, could the those shortlived caused the slowness ?

Add ustack() to the data you are collecting.  I bet that you will find
that there are getpwuid() calls in the stack traces during the pauses.

-- 
Mike Gerdts
http://mgerdts.blogspot.com/
_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

Reply via email to