Intent to Ship: Shared Array Buffers (SABs) on Android

91 views
Skip to first unread message

Lutz Vahl

unread,
Oct 8, 2020, 5:52:36 AM10/8/20
to blin...@chromium.org

Contact emails

va...@chromium.combi...@chromium.orgbbu...@chromium.com

Explainer

https://github.com/whatwg/html/issues/4732
https://github.com/whatwg/html/pull/4734

Specification

https://tc39.github.io/ecma262/#sec-sharedarraybuffer-objects

Design docs

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer
https://docs.google.com/document/d/1tXfF0sdMQJPtwc2qEGF_V_z5xiCkP3ayS5ByRz6Rc-A/edit?ts=5f236efa

Summary

Adds the JavaScript type SharedArrayBuffer to Android gated behind COOP/COEP. SharedArrayBuffers can be sent to Workers and without neutering the sent buffer. The underlying buffer will be shared between the workers. This feature is only targeting Android - https://www.chromestatus.com/feature/4570991992766464 handles all others platforms



Blink component

Blink>JavaScript

Search tags

SABsWasm Threads

Risks


Interoperability and Compatibility

We're re-enabling a feature on android which is already available on all Site Isolated platforms. This can be done safely by gating SABs behind COOP/COEP. The usage of SABs on all other platforms will be migrated as well. The broader plan is outlined in: https://groups.google.com/a/chromium.org/g/blink-dev/c/_0MEXs6TJhg



Gecko: Shipped/Shipping (https://hacks.mozilla.org/2020/07/firefox-79/) Shipped in 79

WebKit: No signal

Web developers: Positive


Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, Chrome OS, Android, and Android WebView)?

No

As part of our response to side-channel attacks like Spectre, Chromium disabled SharedArrayBuffer globally, and then re-enabled it on platforms where we could comfortably deploy Site Isolation. This feature will re-enable SABs on Android.



Is this feature fully tested by web-platform-tests?

Yes

web-platform-tests/wpt#17719

web-platform-tests/wpt#17760

web-platform-tests/wpt#17761

web-platform-tests/wpt#17802

web-platform-tests/wpt#17909

web-platform-tests/wpt#18543

web-platform-tests/wpt#20116

web-platform-tests/wpt#22358


Tracking bug

https://bugs.chromium.org/p/chromium/issues/detail?id=923807

Launch bug

https://bugs.chromium.org/p/chromium/issues/detail?id=1071424

Link to entry on the Chrome Platform Status

https://www.chromestatus.com/feature/5171863141482496

Links to previous Intent discussions

Intent to prototype: https://groups.google.com/a/chromium.org/g/blink-dev/c/xtyi6D52DkM


This intent message was generated by Chrome Platform Status.


Lutz Vahl

Technical Program Manager




Google Germany GmbH

Erika-Mann-Strasse 36

80636 München


Geschäftsführer: Paul Manicle, Halimah DeLaine Prado

Registergericht und -nummer: Hamburg, HRB 86891

Sitz der Gesellschaft: Hamburg


Diese E-Mail ist vertraulich. Falls Sie diese fälschlicherweise erhalten haben sollten, leiten Sie diese bitte nicht an jemand anderes weiter, löschen Sie alle Kopien und Anhänge davon und lassen Sie mich bitte wissen, dass die E-Mail an die falsche Person gesendet wurde. 

     

This e-mail is confidential. If you received this communication by mistake, please don't forward it to anyone else, please erase all copies and attachments, and please let me know that it has gone to the wrong person.


Yoav Weiss

unread,
Oct 8, 2020, 7:23:00 AM10/8/20
to Lutz Vahl, blink-dev
LGTM1

On Thu, Oct 8, 2020 at 11:52 AM Lutz Vahl <va...@chromium.org> wrote:

Contact emails

va...@chromium.combi...@chromium.orgbbu...@chromium.com

Explainer

https://github.com/whatwg/html/issues/4732
https://github.com/whatwg/html/pull/4734

Specification

https://tc39.github.io/ecma262/#sec-sharedarraybuffer-objects

Design docs

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer
https://docs.google.com/document/d/1tXfF0sdMQJPtwc2qEGF_V_z5xiCkP3ayS5ByRz6Rc-A/edit?ts=5f236efa

Summary

Adds the JavaScript type SharedArrayBuffer to Android gated behind COOP/COEP. SharedArrayBuffers can be sent to Workers and without neutering the sent buffer. The underlying buffer will be shared between the workers. This feature is only targeting Android - https://www.chromestatus.com/feature/4570991992766464 handles all others platforms



Blink component

Blink>JavaScript

Search tags

SABsWasm Threads

Risks


Interoperability and Compatibility

We're re-enabling a feature on android which is already available on all Site Isolated platforms. This can be done safely by gating SABs behind COOP/COEP. The usage of SABs on all other platforms will be migrated as well. The broader plan is outlined in: https://groups.google.com/a/chromium.org/g/blink-dev/c/_0MEXs6TJhg



Gecko: Shipped/Shipping (https://hacks.mozilla.org/2020/07/firefox-79/) Shipped in 79

WebKit: No signal

 
--
You received this message because you are subscribed to the Google Groups "blink-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+...@chromium.org.
To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAH0ixBMLJDHRiEYhqKAur3jDZFnEGq3N5jbRs-c_TgOqh9gzQw%40mail.gmail.com.

Rick Byers

unread,
Oct 8, 2020, 9:15:54 AM10/8/20
to Yoav Weiss, Lutz Vahl, blink-dev
LGTM2. I'm very happy to see this available on Android again!

Chris Harrelson

unread,
Oct 8, 2020, 11:25:57 AM10/8/20
to Rick Byers, Yoav Weiss, Lutz Vahl, blink-dev
Reply all
Reply to author
Forward
0 new messages