Open Bug 581533 Opened 14 years ago Updated 10 months ago

Large number of SYSTEM Scope pthreads are created and never recycled

Categories

(Core :: XPCOM, defect)

x86_64
Solaris
defect

Tracking

()

UNCONFIRMED

People

(Reporter: miket7777, Unassigned)

References

()

Details

User-Agent:       Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:1.9.2.7) Gecko/20100716 Firefox/3.6.7
Build Identifier: Mozilla/5.0 (X11; U; SunOS i86pc; en-US; rv:1.9.2.7) Gecko/20100716 Firefox/3.6.7

I have noticved the FF on Solaris 10 creates a large number of PThreads SystemScope which end up as solaris LWPs. 

It appears that FF keeps creating new such threads which never uses and eventually terminate. Howewer the LWPs keep increasing in the kernel. Example: this is the situation after 20minutes running. 

mikefire1[pts/9]:docs > pflags 24611
24611:  /opt/sfw/lib/firefox/firefox-bin
        data model = _ILP32  flags = MSACCT|MSFORK
 /1:    flags = ASLEEP  pollsys(0xf5da4100,0xa,0x8046258,0x0)
 /2:    flags = ASLEEP  lwp_park(0x0,0x0,0x0)
 /3:    flags = DETACH|ASLEEP  lwp_park(0x0,0xf77fee80,0x0)
 /4:    flags = ASLEEP  pollsys(0xf73fead0,0x4,0xf73fea70,0x0)
 /5:    flags = ASLEEP  lwp_park(0x0,0xf72ffda0,0x0)
 /50:   flags = DETACH|ASLEEP  lwp_park(0x0,0x0,0x0)
 /414:  flags = DETACH|ASLEEP  lwp_park(0x0,0x0,0x0)
 /39:   flags = ASLEEP  lwp_park(0x0,0x0,0x0)
 /53:   flags = ASLEEP  nanosleep(0xf2efee50,0x0)
 /51:   flags = DETACH|ASLEEP  lwp_park(0x0,0x0,0x0)
 /403:  flags = DETACH|ASLEEP  lwp_park(0x0,0xf25fee70,0x0)
 /21:   flags = ASLEEP  lwp_park(0x0,0x0,0x0)
 /22:   flags = ASLEEP  lwp_park(0x0,0x0,0x0)
 /23:   flags = ASLEEP  lwp_park(0x0,0x0,0x0)
 /309:  flags = ASLEEP  lwp_park(0x0,0xf32fed70,0x0)
 /404:  flags = DETACH|ASLEEP  lwp_park(0x0,0x0,0x0)
 /405:  flags = ASLEEP  lwp_park(0x0,0x0,0x0)
 /406:  flags = ASLEEP  lwp_park(0x0,0x0,0x0)

I am not sure if this causes a memory leak for the LWP stack segments which may not get recycled. If I let FF run it goes to LWPid > 1000. Is there a necessity to create and kill so many system scope pthreads? Why don't you just launch a resonable number and reuse them. The issue of memory for stack segments of thrads actually going to exorbitant sizes is not insignificant as it keeps stealing VM pages which even though are released it slows the system down.

One other thing is that when I play Youtube songs with AdobeFlash 10.1 after 10-20 minutes the flash player starts speeding up rendering of the video like crazy.I wonder if there is any correlation with the LWP abuse.

Thanks .....

Michael

Reproducible: Always

Steps to Reproduce:
1.run FF with Adobe Flash player 10.1
2. listen to youtube songs
3.
Actual Results:  
wait 10-20 minutes
Version: unspecified → 3.6 Branch
Severity: normal → S3
Component: General → XPCOM
Product: Firefox → Core
Version: 3.6 Branch → unspecified
You need to log in before you can comment on or make changes to this bug.