If you think a bug might affect users in the 57 release, please set the correct tracking and status flags for Release Management.

First boot causes crashes on Windows

RESOLVED FIXED in mozilla54

Status

()

Core
Graphics: WebRender
RESOLVED FIXED
8 months ago
7 months ago

People

(Reporter: sotaro, Assigned: sotaro)

Tracking

(Blocks: 1 bug)

unspecified
mozilla54
Points:
---
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

(Assignee)

Description

8 months ago
When I build graphics branch locally, first boot causes crashes.
(Assignee)

Updated

8 months ago
Blocks: 1311790
(Assignee)

Updated

8 months ago
Assignee: nobody → sotaro.ikeda.g
(Assignee)

Comment 1

8 months ago
I saw another problem with latest source, e10s with multiple tabs caused tab crash.
I was seeing at least one crash caused by the call to SetLayerObserverEpoch in TabChild.cpp getting called before the WebRenderBridge was properly initialized. I have patches pending that will fix that (some in bug 1331509, and one in bug 1326421). If there are other crashes that you're seeing that are different then we'll need to investigate those.
(Assignee)

Comment 3

8 months ago
(In reply to Sotaro Ikeda [:sotaro] from comment #1)
> I saw another problem with latest source, e10s with multiple tabs caused tab
> crash.

It was caused by the call to SetLayerObserverEpoch. It seems same to comment 2.

The crash of comment 0 is happened in WebRenderBridgeParent::RecvDPGetSnapshot().
Depends on: 1331847
(Assignee)

Comment 4

8 months ago
The crash was caused by the following assert failure in gleam.

pub fn read_pixels_into_buffer(x: GLint, y: GLint, width: GLsizei, height: GLsizei,
                               format: GLenum, pixel_type: GLenum, dst_buffer: &mut [u8]) {
    // Assumes that the user properly allocated the size for dst_buffer.
    assert!(calculate_length(width, height, format, pixel_type) == dst_buffer.len());
(Assignee)

Comment 5

8 months ago
Created attachment 8827748 [details] [diff] [review]
patch - Fix ffi inconsistency of wr_readback_into_buffer()
(Assignee)

Comment 6

8 months ago
argument buffer_size of wr_readback_into_buffer() is usize, but it is uint32_t in webrender_ffi.h.

pub extern fn wr_readback_into_buffer(window: &mut WrWindowState, width: u32, height: u32,
                                      dst_buffer: *mut u8, buffer_size: usize) {
(Assignee)

Comment 7

8 months ago
It is a regression of Bug 1319170.
(Assignee)

Updated

8 months ago
Blocks: 1319170

Comment 8

8 months ago
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/projects/graphics/rev/543c59f9d5df
Fix ffi inconsistency of wr_readback_into_buffer() r=gfx?
Status: NEW → RESOLVED
Last Resolved: 8 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla54
You need to log in before you can comment on or make changes to this bug.