WebKit Bugzilla
New
Browse
Search+
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
94636
WTF Threading leaks kernel objects on platforms that use pthreads
https://bugs.webkit.org/show_bug.cgi?id=94636
Summary
WTF Threading leaks kernel objects on platforms that use pthreads
Mark Hahnenberg
Reported
2012-08-21 14:27:27 PDT
Creating lots of Web workers on Mac platforms leaks lots of Mach ports. Eventually, the process can exhaust its allocation of Mach ports from the kernel, which can then cause all sorts of badness, including the inability to allocate new virtual memory from the kernel. ThreadingPthreads.cpp and ThreadIdentifierDataPthreads.cpp need to be refactored so that we do not leak these kernel resources. I would assume that we also leak kernel resources on other pthreads platforms as well.
Attachments
Patch
(10.79 KB, patch)
2012-08-21 14:47 PDT
,
Mark Hahnenberg
ggaren
: review+
Details
Formatted Diff
Diff
View All
Add attachment
proposed patch, testcase, etc.
Mark Hahnenberg
Comment 1
2012-08-21 14:47:17 PDT
Created
attachment 159772
[details]
Patch
Geoffrey Garen
Comment 2
2012-08-21 15:19:19 PDT
Comment on
attachment 159772
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=159772&action=review
r=me with some style comments.
> Source/WTF/wtf/ThreadingPthreads.cpp:169 > +static pthread_t unsafePthreadHandleForIdentifier(ThreadIdentifier id)
How about calling this "pthreadHandleForIdentifierWithLockAlreadyHeld".
> Source/WTF/wtf/ThreadingPthreads.cpp:219 > +void threadWasJoined(ThreadIdentifier threadID)
Let's just move this code into waitForThreadCompletion.
> Source/WTF/wtf/ThreadingPthreads.cpp:258 > +void unsafeThreadWasDetached(ThreadIdentifier threadID)
Let's inline this, since I don't like the "unsafe" prefix and inlining will solve that and avoid anyone calling this without the lock.
> Source/WTF/wtf/ThreadingPthreads.cpp:264 > + delete state;
Let's use OwnPtr in the map instead.
Mark Hahnenberg
Comment 3
2012-08-21 16:15:59 PDT
Committed
r126208
: <
http://trac.webkit.org/changeset/126208
>
Mark Hahnenberg
Comment 4
2012-10-10 11:08:44 PDT
<
rdar://problem/12133833
>
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug