Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[DO NOT MERGE] Initiate image loads in the script thread #14781

Closed
wants to merge 8 commits into from

Conversation

@jdm
Copy link
Member

jdm commented Dec 29, 2016

I just want to do some try runs. This is still very much work-in-progress.


This change is Reviewable

@highfive
Copy link

highfive commented Dec 29, 2016

Heads up! This PR modifies the following files:

  • @KiChjang: components/script/dom/htmlimageelement.rs, components/script/dom/canvasrenderingcontext2d.rs, components/net_traits/image_cache_thread.rs, components/net_traits/image_cache_thread.rs, components/script/script_thread.rs, components/script/dom/bindings/trace.rs, components/script_layout_interface/lib.rs, components/script/dom/htmlcanvaselement.rs, components/script/dom/window.rs, components/script_layout_interface/rpc.rs, components/net/image_cache_thread.rs
  • @fitzgen: components/script/dom/htmlimageelement.rs, components/script/dom/canvasrenderingcontext2d.rs, components/script/script_thread.rs, components/script/dom/bindings/trace.rs, components/script_layout_interface/lib.rs, components/script/dom/htmlcanvaselement.rs, components/script/dom/window.rs, components/script_layout_interface/rpc.rs
  • @emilio: components/layout/display_list_builder.rs, components/layout/fragment.rs, components/layout/query.rs, components/layout/context.rs
@highfive
Copy link

highfive commented Dec 29, 2016

warning Warning warning

  • These commits modify net, layout, and script code, but no tests are modified. Please consider adding a test!
@jdm
Copy link
Member Author

jdm commented Dec 29, 2016

@bors-servo
Copy link
Contributor

bors-servo commented Dec 29, 2016

Trying commit 2e0299b with merge 0f7abd4...

bors-servo added a commit that referenced this pull request Dec 29, 2016
[DO NOT MERGE] Initiate image loads in the script thread

I just want to do some try runs. This is still very much work-in-progress.
@bors-servo
Copy link
Contributor

bors-servo commented Dec 29, 2016

💔 Test failed - linux-dev

@jdm
Copy link
Member Author

jdm commented Dec 29, 2016

@bors-servo
Copy link
Contributor

bors-servo commented Dec 29, 2016

Trying commit 47e2fb0 with merge 6dfdda8...

bors-servo added a commit that referenced this pull request Dec 29, 2016
[DO NOT MERGE] Initiate image loads in the script thread

I just want to do some try runs. This is still very much work-in-progress.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14781)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Dec 29, 2016

💔 Test failed - linux-dev

@jdm
Copy link
Member Author

jdm commented Dec 29, 2016

linux-rel-wpt:

  ▶ FAIL [expected PASS] /_mozilla/css/iframe/overflow.html
  └   → /_mozilla/css/iframe/overflow.html d9d9e489bc5b4508c01b06c7ff92f19dcc2ece3c
/_mozilla/css/iframe/overflow_ref.html 10bfffa0585cecabc78f349636827d6267b2f816
Testing d9d9e489bc5b4508c01b06c7ff92f19dcc2ece3c == 10bfffa0585cecabc78f349636827d6267b2f816

  ▶ FAIL [expected PASS] /_mozilla/css/iframe/simple.html
  └   → /_mozilla/css/iframe/simple.html 6510831f41496e5a48d892ebc20e1815b08e27f2
/_mozilla/css/iframe/simple_ref.html 64daf248c924b7607e2ff04d1bdd7ef623df4cd7
Testing 6510831f41496e5a48d892ebc20e1815b08e27f2 == 64daf248c924b7607e2ff04d1bdd7ef623df4cd7

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_1.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_1.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_1_ref.html cf0470a302c3002426569d47f83c96fbb4936085
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == cf0470a302c3002426569d47f83c96fbb4936085

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_12.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_12.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_12_ref.html c2ec4426d6f7ece7b6da06f3e8f53689e6bb0d7f
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == c2ec4426d6f7ece7b6da06f3e8f53689e6bb0d7f

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_11.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_11.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_11_ref.html cf0470a302c3002426569d47f83c96fbb4936085
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == cf0470a302c3002426569d47f83c96fbb4936085

  ▶ CRASH [expected PASS] /_mozilla/mozilla/FileAPI/blob_url_upload.html
  │ 
  │ VMware, Inc.
  │ Gallium 0.4 on softpipe
  │ 3.3 (Core Profile) Mesa 12.0.1
  │ assertion failed: self.load.is_none() (thread ScriptThread PipelineId { namespace_id: PipelineNamespaceId(0), index: PipelineIndex(1) }, at /home/servo/buildbot/slave/linux-rel-wpt/build/components/script/document_loader.rs:78)
  │ stack backtrace:
  │    0:     0x7f4a1f5b751d - backtrace::backtrace::trace::h7c3311890fb811f9
  │    1:     0x7f4a1f5b7bf2 - backtrace::capture::Backtrace::new::h023332005d95d7ee
  │    2:     0x7f4a1f3f947d - servo::main::{{closure}}::hdf04f97b4a2ecfbe
  │    3:     0x7f4a211ce1b4 - std::panicking::rust_panic_with_hook
  │                         at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/libstd/panicking.rs:554
  │    4:     0x7f4a1f76e0cf - std::panicking::begin_panic::h5c957cdcf99f7784
  │    5:     0x7f4a1f938b18 - drop::h1f5bdc65779e937f
  │    6:     0x7f4a1fb20d14 - <script::dom::htmlimageelement::HTMLImageElement as script::dom::virtualmethods::VirtualMethods>::attribute_mutated::he45885060daec20b
  │    7:     0x7f4a1f9ebe1f - script::dom::attr::Attr::set_value::h417d01c88af9d0bf
  │    8:     0x7f4a1fabe4b0 - script::dom::element::Element::set_attribute::haa4619ac4e9ba3b7
  │    9:     0x7f4a1ff09ac6 - <script::dom::htmlimageelement::HTMLImageElement as script::dom::bindings::codegen::Bindings::HTMLImageElementBinding::HTMLImageElementBinding::HTMLImageElementMethods>::SetSrc::h2560fdf4ead87e16
  │   10:     0x7f4a1f828f8a - std::panicking::try::do_call::h76e418890412ca77
  │   11:     0x7f4a211d50fa - panic_unwind::__rust_maybe_catch_panic
  │                         at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/libpanic_unwind/lib.rs:98
  │   12:     0x7f4a1fdba38b - script::dom::bindings::codegen::Bindings::HTMLImageElementBinding::HTMLImageElementBinding::set_src::h18c2caa21fda7e77
  │   13:     0x7f4a2089a5f5 - CallJitSetterOp
  │   14:     0x7f4a1fa30fe8 - script::dom::bindings::utils::call_setter::hec5957ab3f222ceb
  │   15:     0x7f4a1fa30baa - script::dom::bindings::utils::generic_call::h62360c5acca179c2
  │   16:     0x7f4a20bf62c0 - CallJSNative
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/jscntxtinlines.h:232
  │                          - 2js23InternalCallOrConstructEP9JSContextRKN2JS8CallArgsENS_14MaybeConstruct
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:453
  │   17:     0x7f4a20bf6474 - 2js4CallEP9JSContextN2JS6HandleINS2_5ValueEEES5_RKNS_13AnyInvokeArgsENS2_13MutableHandleIS4_E
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:517
  │   18:     0x7f4a20bfa991 - _ZN2js10CallSetterEP9JSContextN2JS6HandleINS2_5ValueEEES5_S5_
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:644
  │   19:     0x7f4a20bfb17f - SetExistingProperty
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/NativeObject.cpp:2364
  │                          - 2js17NativeSetPropertyEP9JSContextN2JS6HandleIPNS_12NativeObjectEEENS3_I4jsidEENS3_INS2_5ValueEEESA_NS_13QualifiedBoolERNS2_14ObjectOpResult
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/NativeObject.cpp:2399
  │   20:     0x7f4a208cd81e - 2js11SetPropertyEP9JSContextN2JS6HandleIP8JSObjectEENS3_I4jsidEENS3_INS2_5ValueEEESA_RNS2_14ObjectOpResult
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/NativeObject.h:1498
  │   21:     0x7f4a20be9a9f - SetPropertyOperation
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:256
  │                          - Interpret
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:2666
  │   22:     0x7f4a20bf5e8b - 2js9RunScriptEP9JSContextRNS_8RunState
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:399
  │   23:     0x7f4a20bfd358 - _ZN2js13ExecuteKernelEP9JSContextN2JS6HandleIP8JSScriptEER8JSObjectRKNS2_5ValueENS_16AbstractFramePtrEPS9_
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:679
  │   24:     0x7f4a20bfd487 - 2js7ExecuteEP9JSContextN2JS6HandleIP8JSScriptEER8JSObjectPNS2_5Value
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/vm/Interpreter.cpp:712
  │   25:     0x7f4a20a6e498 - Evaluate
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/jsapi.cpp:4407
  │   26:     0x7f4a20a6e9f6 - Evaluate
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/jsapi.cpp:4443
  │                          - 2JS8EvaluateEP9JSContextRKNS_22ReadOnlyCompileOptionsEPKDsmNS_13MutableHandleINS_5ValueEE
  │                         at /home/servo/.cargo/git/checkouts/mozjs-fa11ffc7d4f1cc2d/f7917c4/mozjs/js/src/jsapi.cpp:4501
  │   27:     0x7f4a1fae4e2d - script::dom::globalscope::GlobalScope::evaluate_script_on_global_with_result::hc025cc913245d43c
  │   28:     0x7f4a1fb41871 - script::dom::htmlscriptelement::HTMLScriptElement::execute::h4b7aa0644a1e13ba
  │   29:     0x7f4a1fb402de - script::dom::htmlscriptelement::HTMLScriptElement::prepare::hdb6199b28fe4a7fa
  │   30:     0x7f4a1fba9107 - script::dom::servoparser::ServoParser::parse_sync::hb0cfa76545977a59
  │   31:     0x7f4a1fbb1051 - <script::dom::servoparser::ParserContext as net_traits::FetchResponseListener>::process_response_chunk::h4b13bbefdae59062
  │   32:     0x7f4a1fc22e3d - <script::network_listener::ListenerRunnable<A, Listener> as script::script_thread::Runnable>::handler::h2d4b53199eff5af6
  │   33:     0x7f4a1fc48782 - script::script_thread::ScriptThread::handle_msg_from_script::h99051a975155650f
  │   34:     0x7f4a1fc4167d - script::script_thread::ScriptThread::handle_msgs::{{closure}}::h93236a628ccc3ff0
  │   35:     0x7f4a1fc3c832 - script::script_thread::ScriptThread::handle_msgs::h237a63ea28fb374e
  │   36:     0x7f4a1f7aafd7 - std::panicking::try::do_call::h27c90a05e43510aa
  │   37:     0x7f4a211d50fa - panic_unwind::__rust_maybe_catch_panic
  │                         at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/libpanic_unwind/lib.rs:98
  │   38:     0x7f4a1f9561b4 - <F as alloc::boxed::FnBox<A>>::call_box::h0f23d9d22fc57829
  │   39:     0x7f4a211cce54 - alloc::boxed::{{impl}}::call_once<(),()>
  │                         at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/liballoc/boxed.rs:615
  │                          - std::sys_common::thread::start_thread
  │                         at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/libstd/sys_common/thread.rs:21
  │                          - std::sys::imp::thread::{{impl}}::new::thread_start
  │                         at /buildslave/rust-buildbot/slave/nightly-dist-rustc-linux/build/src/libstd/sys/unix/thread.rs:84
  │   40:     0x7f4a1d2d5183 - start_thread
  │   41:     0x7f4a1cdec37c - clone
  │   42:                0x0 - <unknown>
  │ ERROR:servo: assertion failed: self.load.is_none()
  └ Pipeline failed in hard-fail mode.  Crashing!

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_7.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_7.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_7_ref.html fb93ddb835aefb56390dee7cf7e0e4f5649c26ca
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == fb93ddb835aefb56390dee7cf7e0e4f5649c26ca

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_5.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_5.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_5_ref.html 7dfd438b81d47a0a05ac1dfefdb4c07253f4d249
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 7dfd438b81d47a0a05ac1dfefdb4c07253f4d249

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_6.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_6.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_6_ref.html 683e2ec7bce967a46411ea53318ef9ec4b72c6a3
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 683e2ec7bce967a46411ea53318ef9ec4b72c6a3

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_10.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_10.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_10_ref.html cf0470a302c3002426569d47f83c96fbb4936085
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == cf0470a302c3002426569d47f83c96fbb4936085

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_3.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_3.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_3_ref.html 84755da1b5eafb534aa38cb9d1328d2a796d3395
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 84755da1b5eafb534aa38cb9d1328d2a796d3395

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_4.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_4.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_4_ref.html 8988633f12ba8872ce1392b6a7eeec9f6123a35b
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 8988633f12ba8872ce1392b6a7eeec9f6123a35b

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_2.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_2.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_2_ref.html b983670fc21b2fd7ee1e9d3dd3bb119b850d7f8c
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == b983670fc21b2fd7ee1e9d3dd3bb119b850d7f8c

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_8.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_8.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_8_ref.html 683e2ec7bce967a46411ea53318ef9ec4b72c6a3
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 683e2ec7bce967a46411ea53318ef9ec4b72c6a3

  ▶ Unexpected subtest result in /2dcontext/fill-and-stroke-styles/2d.pattern.paint.repeat.coord2.html:
  │ FAIL [expected PASS] Canvas test: 2d.pattern.paint.repeat.coord2
  └   → The object is in an invalid state.

  ▶ Unexpected subtest result in /html/semantics/embedded-content/the-img-element/current-pixel-density/basic.html:
  └ PASS [expected FAIL] <img src="/images/green-256x256.png" data-expect="256">

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #65: at (128, 0) expected: 0,0,255,255 was 255,255,255,255
  │   → assert_true: at (128, 0) expected: 0,0,255,255 was 255,255,255,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:267:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #4: at (255, 15) expected: 0,0,255,255 was 255,0,0,255
  │   → assert_true: at (255, 15) expected: 0,0,255,255 was 255,0,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:89:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #6: at (128, 8) expected: 255,255,255,255 was 0,255,255,255
  │   → assert_true: at (128, 8) expected: 255,255,255,255 was 0,255,255,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:91:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #9: at (128, 0) expected: 255,255,0,255 was 0,255,255,255
  │   → assert_true: at (128, 0) expected: 255,255,0,255 was 0,255,255,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:94:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #7: at (255, 8) expected: 0,255,255,255 was 255,0,0,255
  │   → assert_true: at (255, 8) expected: 0,255,255,255 was 255,0,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:92:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #59: at (128, 15) expected: 255,255,0,255 was 255,0,0,255
  │   → assert_true: at (128, 15) expected: 255,255,0,255 was 255,0,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:261:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #38: Half the pixels in channel 0 should be >= 128,128,128. found 25%
  │   → assert_true: Half the pixels in channel 0 should be >= 128,128,128. found 25% expected true got false
  │ FAIL [expected PASS] WebGL test #40: Half the pixels in channel 1 should be >= 128,128,128. found 25%
  │   → assert_true: Half the pixels in channel 1 should be >= 128,128,128. found 25% expected true got false
  │ FAIL [expected PASS] WebGL test #42: Half the pixels in channel 2 should be >= 128,128,128. found 25%
  │   → assert_true: Half the pixels in channel 2 should be >= 128,128,128. found 25% expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ assertMsg@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:471:9
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:199:7
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #76: at (128, 8) expected: 0,0,255,255 was 255,0,8,255
  │   → assert_true: at (128, 8) expected: 0,0,255,255 was 255,0,8,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixelRange@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:62:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:310:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #52: at (0, 0) expected: 255,255,255,127 was 128,128,128,128
  │   → assert_true: at (0, 0) expected: 255,255,255,127 was 128,128,128,128 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixelRange@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:62:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:221:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #17: There should be 16 unique values in channel 0. Found 8
  │   → assert_true: There should be 16 unique values in channel 0. Found 8 expected true got false
  │ FAIL [expected PASS] WebGL test #19: There should be 16 unique values in channel 2. Found 8
  │   → assert_true: There should be 16 unique values in channel 2. Found 8 expected true got false
  │ FAIL [expected PASS] WebGL test #22: There should be 32 unique values in channel 0. Found 16
  │   → assert_true: There should be 32 unique values in channel 0. Found 16 expected true got false
  │ FAIL [expected PASS] WebGL test #23: There should be 64 unique values in channel 1. Found 32
  │   → assert_true: There should be 64 unique values in channel 1. Found 32 expected true got false
  │ FAIL [expected PASS] WebGL test #27: There should be 32 unique values in channel 0. Found 16
  │   → assert_true: There should be 32 unique values in channel 0. Found 16 expected true got false
  │ FAIL [expected PASS] WebGL test #28: There should be 32 unique values in channel 1. Found 16
  │   → assert_true: There should be 32 unique values in channel 1. Found 16 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ assertMsg@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:471:9
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:127:7
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #10: at (255, 0) expected: 0,255,0,255 was 0,0,0,255
  │   → assert_true: at (255, 0) expected: 0,255,0,255 was 0,0,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:95:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #56: pixels should all be 0.
  │   → assert_true: pixels should all be 0. expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ assertMsg@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:471:9
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:249:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #60: at (255, 15) expected: 255,0,0,255 was 255,255,255,255
  │   → assert_true: at (255, 15) expected: 255,0,0,255 was 255,255,255,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:262:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #58: at (0, 15) expected: 255,0,0,255 was 0,0,0,255
  │   → assert_true: at (0, 15) expected: 255,0,0,255 was 0,0,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:260:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #71: at (128, 8) expected: 15,121,0,255 was 255,15,121,255
  │   → assert_true: at (128, 8) expected: 15,121,0,255 was 255,15,121,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixelRange@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:62:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:289:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #64: at (0, 0) expected: 0,0,0,255 was 255,0,0,255
  │   → assert_true: at (0, 0) expected: 0,0,0,255 was 255,0,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:266:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #62: at (128, 8) expected: 255,0,0,255 was 255,255,0,255
  │   → assert_true: at (128, 8) expected: 255,0,0,255 was 255,255,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:264:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #3: at (128, 15) expected: 255,0,255,255 was 0,255,0,255
  │   → assert_true: at (128, 15) expected: 255,0,255,255 was 0,255,0,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:88:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #66: at (255, 0) expected: 255,0,0,255 was 0,255,255,255
  │   → assert_true: at (255, 0) expected: 255,0,0,255 was 0,255,255,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixel@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:52:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:268:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ Unexpected subtest result in /webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:
  │ FAIL [expected PASS] WebGL test #74: at (128, 8) expected: 0,0,255,255 was 255,0,8,255
  │   → assert_true: at (128, 8) expected: 0,0,255,255 was 255,0,8,255 expected true got false
  │ 
  │ reportTestResultsToHarness/<@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:88:9
  │ Test.prototype.step@http://web-platform.test:8000/resources/testharness.js:1406:20
  │ test@http://web-platform.test:8000/resources/testharness.js:501:9
  │ reportTestResultsToHarness@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:87:7
  │ testFailed@http://web-platform.test:8000/webgl/conformance-1.0.3/resources/js-test-pre.js:153:5
  │ checkCanvasRectColor@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1047:9
  │ checkCanvasRect@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1073:3
  │ checkPixelRange@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:62:5
  │ runTests@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/textures/gl-teximage.html:303:3
  │ countDown@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2001:7
  │ imageLoaded/<@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:2008:7
  └ loadImageAsync/img.onload@http://web-platform.test:8000/webgl/conformance-1.0.3/conformance/resources/webgl-test-utils.js:1983:5

  ▶ ERROR [expected OK] /_mozilla/mozilla/canvas/fill_and_stroke_getters_setters.html
  └   → InvalidStateError: The object is in an invalid state.

mac-rel-wpt2:

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_11.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_11.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_11_ref.html cf0470a302c3002426569d47f83c96fbb4936085
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == cf0470a302c3002426569d47f83c96fbb4936085

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_1.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_1.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_1_ref.html cf0470a302c3002426569d47f83c96fbb4936085
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == cf0470a302c3002426569d47f83c96fbb4936085

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_12.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_12.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_12_ref.html c2ec4426d6f7ece7b6da06f3e8f53689e6bb0d7f
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == c2ec4426d6f7ece7b6da06f3e8f53689e6bb0d7f

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_10.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_10.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_10_ref.html cf0470a302c3002426569d47f83c96fbb4936085
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == cf0470a302c3002426569d47f83c96fbb4936085

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_2.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_2.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_2_ref.html b983670fc21b2fd7ee1e9d3dd3bb119b850d7f8c
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == b983670fc21b2fd7ee1e9d3dd3bb119b850d7f8c

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_4.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_4.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_4_ref.html 8988633f12ba8872ce1392b6a7eeec9f6123a35b
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 8988633f12ba8872ce1392b6a7eeec9f6123a35b

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_3.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_3.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_3_ref.html 84755da1b5eafb534aa38cb9d1328d2a796d3395
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 84755da1b5eafb534aa38cb9d1328d2a796d3395

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_5.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_5.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_5_ref.html 7dfd438b81d47a0a05ac1dfefdb4c07253f4d249
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 7dfd438b81d47a0a05ac1dfefdb4c07253f4d249

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_6.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_6.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_6_ref.html 683e2ec7bce967a46411ea53318ef9ec4b72c6a3
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 683e2ec7bce967a46411ea53318ef9ec4b72c6a3

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_7.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_7.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_7_ref.html fb93ddb835aefb56390dee7cf7e0e4f5649c26ca
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == fb93ddb835aefb56390dee7cf7e0e4f5649c26ca

  ▶ FAIL [expected PASS] /_mozilla/mozilla/canvas/drawimage_html_image_8.html
  └   → /_mozilla/mozilla/canvas/drawimage_html_image_8.html 3d342c25349f6e467719fc554a0e3beb47ebc51a
/_mozilla/mozilla/canvas/drawimage_html_image_8_ref.html 683e2ec7bce967a46411ea53318ef9ec4b72c6a3
Testing 3d342c25349f6e467719fc554a0e3beb47ebc51a == 683e2ec7bce967a46411ea53318ef9ec4b72c6a3

  ▶ TIMEOUT [expected PASS] /_mozilla/mozilla/FileAPI/blob_url_upload.html
  │ 
  │ VMware, Inc.
  │ Gallium 0.4 on softpipe
  │ 3.3 (Core Profile) Mesa 12.0.1
  └ Loading blob blob:http://web-platform.test:8000/6ad4129b2516456c8205094339434a89

  ▶ ERROR [expected OK] /_mozilla/mozilla/canvas/fill_and_stroke_getters_setters.html
  └   → InvalidStateError: The object is in an invalid state.
@bors-servo
Copy link
Contributor

bors-servo commented Jan 3, 2017

The latest upstream changes (presumably #14831) made this pull request unmergeable. Please resolve the merge conflicts.

@jdm jdm force-pushed the jdm:image_script_load branch from 47e2fb0 to ff5d53b Jan 4, 2017
@highfive highfive removed the S-tests-failed label Jan 4, 2017
@jdm
Copy link
Member Author

jdm commented Jan 4, 2017

@bors-servo
Copy link
Contributor

bors-servo commented Jan 4, 2017

Trying commit ff5d53b with merge 11d81d1...

bors-servo added a commit that referenced this pull request Jan 4, 2017
[DO NOT MERGE] Initiate image loads in the script thread

I just want to do some try runs. This is still very much work-in-progress.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14781)
<!-- Reviewable:end -->
@jdm jdm removed the S-needs-rebase label Jan 4, 2017
@bors-servo
Copy link
Contributor

bors-servo commented Jan 4, 2017

💔 Test failed - linux-dev

@jdm
Copy link
Member Author

jdm commented Jan 4, 2017

@jdm jdm force-pushed the jdm:image_script_load branch from ff5d53b to 002a34b Jan 4, 2017
@highfive highfive removed the S-tests-failed label Jan 4, 2017
@jdm
Copy link
Member Author

jdm commented Jan 6, 2017

@bors-servo
Copy link
Contributor

bors-servo commented Jan 6, 2017

Trying commit a4b2185 with merge 6ed8ff7...

bors-servo added a commit that referenced this pull request Jan 6, 2017
[DO NOT MERGE] Initiate image loads in the script thread

I just want to do some try runs. This is still very much work-in-progress.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14781)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Jan 6, 2017

💔 Test failed - linux-dev

@jdm
Copy link
Member Author

jdm commented Jan 6, 2017

gl-teximage passed that time :O

@jdm
Copy link
Member Author

jdm commented Jan 6, 2017

@bors-servo: retry

@bors-servo
Copy link
Contributor

bors-servo commented Jan 6, 2017

Trying commit a4b2185 with merge 9efd82c...

bors-servo added a commit that referenced this pull request Jan 6, 2017
[DO NOT MERGE] Initiate image loads in the script thread

I just want to do some try runs. This is still very much work-in-progress.

<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/14781)
<!-- Reviewable:end -->
@bors-servo
Copy link
Contributor

bors-servo commented Jan 6, 2017

💔 Test failed - linux-dev

@jdm
Copy link
Member Author

jdm commented Jan 7, 2017

Only test-tidy has failed for two try runs in a row. I guess it's time to clean this up into something mergeable!

@bors-servo
Copy link
Contributor

bors-servo commented Jan 9, 2017

The latest upstream changes (presumably #14618) made this pull request unmergeable. Please resolve the merge conflicts.

@jdm jdm force-pushed the jdm:image_script_load branch from a4b2185 to 24c5be6 Jan 11, 2017
In support of this goal, the layout thread collects information about
CSS images that are missing image data and hands it off to the script
thread after layout completes. The script thread stores a list of
nodes that will need to be reflowed after the associated network
request is complete. The script thread ensures that the nodes are
not GCed while a request is ongoing, which the layout thread is
incapable of guaranteeing.

The image cache's API has also been redesigned in support of this
work. No network requests are made by the new image cache, since it
does not possess the document-specific information necessary to
initiate them. Instead, there is now a single, synchronous
query operation that optionally reserves a slot when a cache
entry for a URL cannot be found. This reserved slot is then
the responsibility of the queryer to populate with the contents
of the network response for the URL once it is complete. Any
subsequent queries for the same URL will be informed that the
response is pending until that occurs.

The changes to layout also remove the synchronous image loading
code path, which means that reftests now test the same code
that non-test binaries execute. The decision to take a screenshot
now considers whether there are any outstanding image
requests for layout in order to avoid intermittent failures in
reftests that use CSS images.
@jdm jdm force-pushed the jdm:image_script_load branch from 24c5be6 to 98640c3 Jan 11, 2017
@jdm jdm force-pushed the jdm:image_script_load branch from 98640c3 to 63e9dbc Jan 11, 2017
@jdm jdm removed the S-needs-rebase label Jan 11, 2017
@jdm jdm closed this Jan 11, 2017
@jdm jdm deleted the jdm:image_script_load branch Jan 11, 2017
@jdm jdm restored the jdm:image_script_load branch Jan 11, 2017
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Linked issues

Successfully merging this pull request may close these issues.

None yet

4 participants
You can’t perform that action at this time.