New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 693945 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Feb 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: All
Pri: 1
Type: Bug



Sign in to add a comment

[wasm] Limit size of synchronous compiles in WebAssembly on main thread.

Project Member Reported by bradnelson@chromium.org, Feb 18 2017

Issue description

We don't want synchronous WebAssembly compiles to jank the main thread.
We should put a cap in place to restrict this.

(Chromium half)
 
Project Member

Comment 1 by bugdroid1@chromium.org, Feb 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/50e18a2d44ebf8da875090bf9f0a4645d6741d23

commit 50e18a2d44ebf8da875090bf9f0a4645d6741d23
Author: mtrofin <mtrofin@chromium.org>
Date: Tue Feb 21 19:07:53 2017

[wasm] Block compile/instantiate of large array buffers

To discourage development patterns leading to bad user experience, we
block wasm compilation/instantiation through the sync APIs
for modules larger than a certain size.

Promise-based APIs still succeed; also, sync APIs succeed in worker
contexts.

BUG= 693945 

R=bradnelson@chromium.org,esprehn@chromium.org,jochen@chromium.org

Review-Url: https://codereview.chromium.org/2702953002
Cr-Commit-Position: refs/heads/master@{#451811}

[add] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/LayoutTests/fast/wasm/wasm-constants.js
[add] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-test.html
[add] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-tests-common.js
[add] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-tests.js
[add] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-worker.js
[add] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/LayoutTests/fast/wasm/wasm-module-builder.js
[modify] https://crrev.com/50e18a2d44ebf8da875090bf9f0a4645d6741d23/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp

Labels: Merge-Request-57
This is required on 57 to address misuse of part of the wasm api.

Comment 3 by gov...@chromium.org, Feb 22 2017

Please apply appropriate OS labels. Thank you.
Labels: Arch-All OS-All
Project Member

Comment 5 by sheriffbot@chromium.org, Feb 22 2017

Labels: -Merge-Request-57 Hotlist-Merge-Approved Merge-Approved-57
Your change meets the bar and is auto-approved for M57. Please go ahead and merge the CL to branch 2987 manually. Please contact milestone owner if you have questions.
Owners: amineer@(clank), cmasso@(bling), ketakid@(cros), govind@(desktop)

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot
If possible, could you please merge your change to M57 branch 2987 by 5:00 PM PT today, Wednesday (02/22) so we can pick it up for this week beta release. 
Thank you.
Cc: mtrofin@chromium.org domenic@chromium.org
 Issue v8:5981  has been merged into this issue.
Project Member

Comment 8 by bugdroid1@chromium.org, Feb 22 2017

Labels: -merge-approved-57 merge-merged-2987
The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d

commit 182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d
Author: Brad Nelson <bradnelson@chromium.org>
Date: Wed Feb 22 22:44:25 2017

[wasm] Block compile/instantiate of large array buffers

To discourage development patterns leading to bad user experience, we
block wasm compilation/instantiation through the sync APIs
for modules larger than a certain size.

Promise-based APIs still succeed; also, sync APIs succeed in worker
contexts.

BUG= 693945 

R=bradnelson@chromium.org,esprehn@chromium.org,jochen@chromium.org

Review-Url: https://codereview.chromium.org/2702953002
Cr-Commit-Position: refs/heads/master@{#451811}
(cherry picked from commit 50e18a2d44ebf8da875090bf9f0a4645d6741d23)

Review-Url: https://codereview.chromium.org/2713733002 .
Cr-Commit-Position: refs/branch-heads/2987@{#647}
Cr-Branched-From: ad51088c0e8776e8dcd963dbe752c4035ba6dab6-refs/heads/master@{#444943}

[add] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/LayoutTests/fast/wasm/wasm-constants.js
[add] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-test.html
[add] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-tests-common.js
[add] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-tests.js
[add] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/LayoutTests/fast/wasm/wasm-limits-worker.js
[add] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/LayoutTests/fast/wasm/wasm-module-builder.js
[modify] https://crrev.com/182ba2ea22eb0371d728d8dfbfcdb95408e7fd8d/third_party/WebKit/Source/bindings/core/v8/V8Initializer.cpp

Status: Fixed (was: Assigned)

Sign in to add a comment