Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upAdd OSMesa headless mode, run WPT against Webrender. #13382
Conversation
highfive
commented
Sep 22, 2016
|
Heads up! This PR modifies the following files:
|
highfive
commented
Sep 22, 2016
|
@bors-servo try |
Add OSMesa headless mode, run WPT against Webrender.
|
This is ready for review now. If anyone interested can take a look at the test expectation changes and let me know if there's anything in there that we don't want to land with updated expectations, I'll look further into the root cause of the differing results. @emilio r? on the webgl paint thread changes. @jdm r? on the script / webidl changes. @larsbergstrom r? on the osmesa build changes. @emilio / @larsbergstrom / @pcwalton r? on the glutin headless / osmesa changes. @jgraham / @larsbergstrom r? on the python / wpt changes. Some parts (e.g. the WPT / python changes) might be in the wrong place - please let me know if the case. |
|
|
|
@bors-servo try |
Add OSMesa headless mode, run WPT against Webrender. <!-- 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/13382) <!-- Reviewable:end -->
|
|
|
@glennw Could you verify if all the other new crashes in the test expectations are the same matrix problem? |
|
@jdm I've verified that the four panics in the transform tests are the same bug, and that the three panics in the filters tests are servo/webrender#419. Both of them can be fixed before landing this if you'd prefer (the filters one is a bit more complicated to fix than the transform one though). |
|
I'm fine with landing them as is. No need to hold them up as long as we understand what's going on. |
|
r=me on the script/webidl changes. |
| height as u32, | ||
| chan.send(CanvasData::Pixels(pixel_data)).unwrap(); | ||
| } | ||
| WebGLPaintTaskData::WebRender(ref wr_api, _, Some(image_key)) => { |
This comment has been minimized.
This comment has been minimized.
emilio
Sep 23, 2016
•
Member
hmm... Do we have the context bound at this point in this thread? I think we don't.
This comment has been minimized.
This comment has been minimized.
glennw
Sep 23, 2016
Author
Member
Ah, yes. I guess we just need to add the WR(Some(image)) case to the init() method below, right? So that it binds the context in the same way as the non-WR readback case?
This comment has been minimized.
This comment has been minimized.
emilio
Sep 23, 2016
Member
Hm... Yes, though you'd need to reach the actual context, plus apply commands locally in this thread instead of sending them to WebRender.
All in all, I think the best approach is to expose the RendererKind (and probably the wrapper types for the context too) and move the fallback logic here, so that the Readback data contains the correct kind of context.
| @@ -215,7 +320,7 @@ impl Window { | |||
| #[cfg(not(target_os = "android"))] | |||
| fn gl_version() -> GlRequest { | |||
| if opts::get().use_webrender { | |||
| return GlRequest::Specific(Api::OpenGl, (3, 2)); | |||
| return GlRequest::Specific(Api::OpenGl, (3, 3)); | |||
This comment has been minimized.
This comment has been minimized.
emilio
Sep 23, 2016
Member
Is this completely necessary? (I assume so, but it's kind of unfortunate)
| WindowKind::Window(ref window) => { | ||
| window.set_inner_size(size.width as u32, size.height as u32) | ||
| } | ||
| WindowKind::Headless(..) => {} |
This comment has been minimized.
This comment has been minimized.
emilio
Sep 23, 2016
•
Member
I think we can simplify these cases returning early and adding a window() method, or something, but I guess this is fine. r=me on the glutin changes.
|
wptrunner changes look mostly fine, but need to also land upstream. Reviewed 4 of 4 files at r9, 1 of 1 files at r12. python/servo/command_base.py, line 54 at r14 (raw file):
Intentional? tests/wpt/harness/requirements_servo.txt, line 2 at r14 (raw file):
Hmm, why is this required to run the tests? Comments from Reviewable |
|
Review status: 5 of 155 files reviewed at latest revision, 5 unresolved discussions. tests/wpt/harness/requirements_servo.txt, line 2 at r14 (raw file):
|
|
Review status: 5 of 155 files reviewed at latest revision, 5 unresolved discussions. ports/glutin/window.rs, line 323 at r14 (raw file):
|
|
@jgraham What is the upstreaming process - is it something we do after this all lands? Or does it need to be done beforehand? |
|
@bors-servo try |
|
|
Add OSMesa headless mode, run WPT against Webrender. <!-- 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/13382) <!-- Reviewable:end -->
|
|
|
|
|
@bors-servo retry
|
|
|
|
@bors-servo retry |
|
|
|
|
Move mako out of wptrunner required packages There was a review comment about this in #13382 (comment) that was never addressed. <!-- 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/13562) <!-- Reviewable:end -->
…rom servo:jdm-patch-5); r=jgraham There was a review comment about this in servo/servo#13382 (comment) that was never addressed. Source-Repo: https://github.com/servo/servo Source-Revision: c10de40e4ea4430037ac9156cc2b5d31f92a7cd4
…rom servo:jdm-patch-5); r=jgraham There was a review comment about this in servo/servo#13382 (comment) that was never addressed. Source-Repo: https://github.com/servo/servo Source-Revision: c10de40e4ea4430037ac9156cc2b5d31f92a7cd4 UltraBlame original commit: 3c1adde304c06e01eb22151a5cea65c35651021e
…rom servo:jdm-patch-5); r=jgraham There was a review comment about this in servo/servo#13382 (comment) that was never addressed. Source-Repo: https://github.com/servo/servo Source-Revision: c10de40e4ea4430037ac9156cc2b5d31f92a7cd4 UltraBlame original commit: 3c1adde304c06e01eb22151a5cea65c35651021e
…rom servo:jdm-patch-5); r=jgraham There was a review comment about this in servo/servo#13382 (comment) that was never addressed. Source-Repo: https://github.com/servo/servo Source-Revision: c10de40e4ea4430037ac9156cc2b5d31f92a7cd4 UltraBlame original commit: 3c1adde304c06e01eb22151a5cea65c35651021e
glennw commentedSep 22, 2016
•
edited by larsbergstrom
This change is