Bug 220364

Summary: Should SharedArrayBuffer/WebAssembly.Memory really throw?
Product: WebKit Reporter: Sam Sneddon [:gsnedders] <gsnedders>
Component: JavaScriptCoreAssignee: Yusuke Suzuki <ysuzuki>
Status: RESOLVED FIXED    
Severity: Normal CC: clopez, eric.carlson, ews-watchlist, glenn, jer.noble, keith_miller, mark.lam, msaboff, philipj, saam, sergio, simon.fraser, tzagallo, webkit-bug-importer, youennf, ysuzuki
Priority: P2 Keywords: InRadar, WPTImpact
Version: Safari Technology Preview   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=218944
https://bugs.webkit.org/show_bug.cgi?id=219076
https://bugs.webkit.org/show_bug.cgi?id=218693
https://github.com/web-platform-tests/wpt/issues/27065
Attachments:
Description Flags
Patch
mark.lam: review+, ews-feeder: commit-queue-
Patch none

Sam Sneddon [:gsnedders]
Reported 2021-01-06 08:37:54 PST
Currently in ToT (and STP 117+), trying to create a SharedArrayBuffer throws with "Shared WebAssembly.Memory and SharedArrayBuffer are not enabled". This has caused a variety of WPT tests to regress (e.g., many encoding tests), due to https://github.com/web-platform-tests/wpt/blob/master/common/sab.js silently creating a non-shared WebAssembly.Memory (as would be expected of an unsupported option) previously but now throwing with that TypeError.
Attachments
Patch (192.72 KB, patch)
2021-01-22 18:13 PST, Yusuke Suzuki
mark.lam: review+
ews-feeder: commit-queue-
Patch (68.50 KB, patch)
2021-01-22 19:43 PST, Yusuke Suzuki
no flags
Radar WebKit Bug Importer
Comment 1 2021-01-13 08:38:11 PST
Yusuke Suzuki
Comment 2 2021-01-22 18:13:10 PST
Mark Lam
Comment 4 2021-01-22 19:20:26 PST
Comment on attachment 418204 [details] Patch r=me if EWS bots are green.
Yusuke Suzuki
Comment 5 2021-01-22 19:41:46 PST
I'll only update sab.js and wasm for now.
Yusuke Suzuki
Comment 6 2021-01-22 19:43:54 PST
Yusuke Suzuki
Comment 7 2021-01-22 20:40:24 PST
Debug failure http/tests/loading/basic-auth-load-URL-with-consecutive-slashes.html is flaky and unrelated to wpt / wasm
Yusuke Suzuki
Comment 8 2021-01-22 20:58:54 PST
Simon Fraser (smfr)
Comment 9 2021-01-23 11:12:36 PST
Comment on attachment 418208 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=418208&action=review > Source/JavaScriptCore/ChangeLog:8 > + Not accessing "shared" field if Options::useSharedArrayBuffer() is false. This doesn't tell me the answer to the question in the title.
Mark Lam
Comment 10 2021-01-23 11:37:01 PST
(In reply to Simon Fraser (smfr) from comment #9) > Comment on attachment 418208 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=418208&action=review > > > Source/JavaScriptCore/ChangeLog:8 > > + Not accessing "shared" field if Options::useSharedArrayBuffer() is false. > > This doesn't tell me the answer to the question in the title. The answer is no. The above comment was trying to say, "we should not access the `shared` field if Options::useSharedArrayBuffer() is false".
Sam Sneddon [:gsnedders]
Comment 12 2021-05-14 06:52:06 PDT
Filed https://github.com/web-platform-tests/wpt/pull/28998 to workaround the constructor unexpectedly throwing.
Note You need to log in before you can comment on or make changes to this bug.