Closed Bug 1456350 Opened 6 years ago Closed 6 years ago

Forward WebRender error! to gfxCriticalNote when GPU process does not exist

Categories

(Core :: Graphics: WebRender, defect, P1)

Unspecified
macOS
defect

Tracking

()

RESOLVED FIXED
mozilla61
Tracking Status
firefox61 --- fixed

People

(Reporter: sotaro, Assigned: sotaro)

References

Details

Attachments

(1 file, 3 obsolete files)

when GPU process does not exist, WebRender error! is not forwarded to gfxCriticalNote.

See Bug 1454878 Comment 2.
Depends on: 1454878
We want to be able to get the messages, and this currently only applies to OS X?
OS: Unspecified → Mac OS X
Priority: -- → P1
(In reply to Milan Sreckovic [:milan] from comment #1)
> We want to be able to get the messages, and this currently only applies to
> OS X?

It applies also to linux. Linux does not use GPU process by default.
Assignee: nobody → sotaro.ikeda.g
Attachment #8970828 - Flags: review?(xidorn+moz)
Attachment #8970828 - Flags: review?(xidorn+moz)
Attachment #8970828 - Attachment is obsolete: true
Attachment #8970830 - Flags: review?(xidorn+moz)
Comment on attachment 8970830 [details] [diff] [review]
patch - Forward webrender error log to gfxCriticalNote

I have no idea why WebRender needs to use glue.rs... and I'm not very familiar with logging stuff, so redirect to Bobby.
Attachment #8970830 - Flags: review?(xidorn+moz) → review?(bobbyholley)
Because, rust log is singleton. If gpu process does not exist, the rust log is already initialized by Servo_Initialize().
  https://dxr.mozilla.org/mozilla-central/source/servo/ports/geckolib/glue.rs#187

And we want to forward webrender related "error!"s to gfxCriticalNote.
It might be desirable to patch log/env_logger so that it allows having multiple instances active. It seems pretty icky to have webrender/gfx specific code in the stylo init codepath.
Comment on attachment 8970830 [details] [diff] [review]
patch - Forward webrender error log to gfxCriticalNote

Review of attachment 8970830 [details] [diff] [review]:
-----------------------------------------------------------------

Seems like we should replace the Servo_Init/Servo_Shutdown with GkRust_Init/GkRust_Shutdown functions in source/toolkit/library/rust/shared/lib.rs. Those functions would do any general Gecko setup and then invoke any necessary servo code (directly, without any extra FFI calls).
Attachment #8970830 - Flags: review?(bobbyholley) → review-
Thanks for the advice! I am going to add GkRust_Init/GkRust_Shutdown.
Attachment #8970830 - Attachment is obsolete: true
Update nits.
Attachment #8971103 - Attachment is obsolete: true
attachment 8971104 [details] [diff] [review] addressed the comment.
Comment on attachment 8971104 [details] [diff] [review]
patch - Forward webrender error log to gfxCriticalNote

:bholley, can you review the patch again?
Attachment #8971104 - Flags: review?(bobbyholley)
Attachment #8971104 - Flags: review?(bobbyholley) → review+
Pushed by sikeda@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/56a2a8cc35fd
Forward webrender error log to gfxCriticalNote r=bholley
Blocks: 1457387
Blocks: 1457390
No longer blocks: 1457387
https://hg.mozilla.org/mozilla-central/rev/56a2a8cc35fd
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla61
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: