Bug 161893

Summary: ParkingLot is going to have a bad time with threads dying
Product: WebKit Reporter: Filip Pizlo <fpizlo>
Component: Web Template FrameworkAssignee: Filip Pizlo <fpizlo>
Status: RESOLVED FIXED    
Severity: Normal CC: barraclough, benjamin, cdumez, cmarcelo, commit-queue, dbates, ddkilzer, ggaren, jfbastien, keith_miller, mark.lam, mhahnenb, msaboff, oliver, saam, sam
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: All   
OS: All   
Attachments:
Description Flags
the patch msaboff: review+

Filip Pizlo
Reported 2016-09-12 22:12:56 PDT
If a thread dies right as it falls out of parkConditionally, then unparkOne() and friends might die because they will dereference a deallocated ThreadData. The solution is to ref-count ThreadData's. When unparkOne() and friends want to hold onto a ThreadData past the queue lock, they can +1 the ref count.
Attachments
the patch (3.64 KB, patch)
2016-09-12 22:14 PDT, Filip Pizlo
msaboff: review+
Filip Pizlo
Comment 1 2016-09-12 22:14:15 PDT
Created attachment 288674 [details] the patch
Michael Saboff
Comment 2 2016-09-13 07:31:16 PDT
Comment on attachment 288674 [details] the patch r=me
Filip Pizlo
Comment 3 2016-09-13 09:01:48 PDT
David Kilzer (:ddkilzer)
Comment 4 2016-09-13 12:27:02 PDT
Note You need to log in before you can comment on or make changes to this bug.