RESOLVED FIXED Bug 225537
IPC testing API should have the ability to create and receive IPC::Semaphore
https://bugs.webkit.org/show_bug.cgi?id=225537
Summary IPC testing API should have the ability to create and receive IPC::Semaphore
Ryosuke Niwa
Reported 2021-05-07 13:20:02 PDT
In order to support DisplayList fuzzing, we need the ability to create & receive IPC::Semaphore.
Attachments
Patch (24.13 KB, patch)
2021-05-07 13:35 PDT, Ryosuke Niwa
no flags
Patch for landing (25.05 KB, patch)
2021-05-07 14:06 PDT, Ryosuke Niwa
no flags
Patch for landing (24.18 KB, patch)
2021-05-07 14:30 PDT, Ryosuke Niwa
no flags
Ryosuke Niwa
Comment 1 2021-05-07 13:35:07 PDT
Wenson Hsieh
Comment 2 2021-05-07 13:51:41 PDT
Comment on attachment 428028 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=428028&action=review > Source/WebKit/WebProcess/WebPage/IPCTestingAPI.cpp:551 > + RemoteRenderingBackendCreationParameters parameters { *identifier, WTFMove(semaphore), *pageProxyID, *pageID }; > + encoder << parameters; > + semaphoreObject->exchange(WTFMove(semaphore)); We seem to `WTFMove(semaphore)` a couple of times here…is that intentional?
Ryosuke Niwa
Comment 3 2021-05-07 14:05:30 PDT
Comment on attachment 428028 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=428028&action=review >> Source/WebKit/WebProcess/WebPage/IPCTestingAPI.cpp:551 >> + semaphoreObject->exchange(WTFMove(semaphore)); > > We seem to `WTFMove(semaphore)` a couple of times here…is that intentional? As we discussed, this should have been WTFMove(parameters.resumeDisplayListSemaphore), not WTFMove(semaphore). > Tools/TestWebKitAPI/Tests/WebKitCocoa/IPCTestingAPI.mm:225 > + "const result = IPC.sendSyncMessage('GPU', 123, IPC.messages.RemoteRenderingBackend_SemaphoreForGetImageData.name, 100, []);" I'd add a call to signal() here so that the above bug will be caught with a debug assertion in IPC::Semaphore::signal.
Ryosuke Niwa
Comment 4 2021-05-07 14:06:46 PDT
Created attachment 428032 [details] Patch for landing
Ryosuke Niwa
Comment 5 2021-05-07 14:30:21 PDT
Comment on attachment 428032 [details] Patch for landing View in context: https://bugs.webkit.org/attachment.cgi?id=428032&action=review > WebKit.xcworkspace/xcshareddata/xcschemes/All Source.xcscheme:130 > + BuildableName = "Framework &amp; XPC Services" Oh oops :(
Ryosuke Niwa
Comment 6 2021-05-07 14:30:33 PDT
Created attachment 428037 [details] Patch for landing
Ryosuke Niwa
Comment 7 2021-05-07 14:32:54 PDT
Comment on attachment 428037 [details] Patch for landing Clearing flags on attachment: 428037 Committed r277199 (237471@main): <https://commits.webkit.org/237471@main>
Ryosuke Niwa
Comment 8 2021-05-07 14:32:56 PDT
All reviewed patches have been landed. Closing bug.
Radar WebKit Bug Importer
Comment 9 2021-05-07 14:33:18 PDT
Note You need to log in before you can comment on or make changes to this bug.