Subject: Re: "parked" processes?
To: None <current-users@NetBSD.org>
From: Alan Barrett <apb@cequrux.com>
List: current-users
Date: 07/26/2007 11:57:19
On Thu, 26 Jul 2007, Andrew Doran wrote:
> > > I still encounter hands in which firefox is unresponsive, and most of
> > > its lwps are in "parked" state.
> 
> Are you using any plugins with firefox?

Yes, a whole pile of them.

> Is there a way to reproduce the behaviour that anyone knows of?

It seems pretty random to me, but perhaps something like this would work:

   * open lots of windows and tabs so firefox is using lots of memory
     (I often have 30 to 60 tabs open, spread over 5 to 10 windows);
   * stop touching firefox, but keep the machine otherwise busy for a
     few hours, so that eventually firefox gets swapped out.

> > It appears that the problem is related to the process being
> > swapped out.  Every time firefox is hung (unresponsive to mouse
> > clicks, doesn't even redraw the window when it is brought to the
> > foreground), I have found that "ps -l" reports that the process is
> > swapped out ("W" in the second character of the "STAT" column), and
> > that "ps -s" reports that every lwp is swapped out.
>
> Are these swapped out processes runnable (R)?

Never; it's usually "IWl" or "SWl".

> > Most lwps have WCHAN = "parked", but there's always one with "-",
> > and one with something else (usually "select" or "poll").
>
> That's how firefox usually looks. The "-" thread is likely a zombie
> waiting to be collected.

Even when everything is working normally, there's always one firefox
lwp with WCHAN = "-" and STATE = "ZW-" or "ZWL-".  This seems odd.

(I am running NetBSD 4.99.23 on i386, but firefox-2.0.0.4 was compiled
under NetBSD 4.99.21.)

--apb (Alan Barrett)