Fallback to GLX if EGL is unavailable when MOZ_X11_EGL/pref set
Categories
(Core :: Graphics: WebRender, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox87 | --- | fixed |
People
(Reporter: aosmond, Assigned: aosmond)
References
(Regressed 1 open bug)
Details
Attachments
(1 file)
(deleted),
text/x-phabricator-request
|
Details |
As revealed in our perf testing config, the EGL library might not be available in some configurations. If we want to default to preferring it, we need to verify the library is present (probably in glxtest) and notify the main process what libraries are available. This would override the envvar/pref.
Assignee | ||
Updated•4 years ago
|
Assignee | ||
Comment 1•4 years ago
|
||
As we make the transition to using EGL over GLX, we will need our
detection code to be sufficient without EGL to determine the device in
use. This patch makes us always use the EGL testing code over the GLX
testing code, regardless of the pref/envvar setting.
At the very least, we need to know the vendor ID of the device in use.
We can determine this if there is only one GPU on the PCI list, if we
get a driver name from Mesa, or if it is a proprietary driver (i.e.
NVIDIA) which includes its name in the vendor ID. If we know the vendor
ID, we can usually derive the device ID from the PCI list.
We now also track which path glxtest took. If we successfully did the
test via EGL, then we will allow the pref/envvar to use EGL instead of
GLX. If the test reverted to GLX, then it will use GLX regardless of the
pref/envvar. This is necessary because we need to know if the libraries
are available or not -- some systems may be missing one or the other.
Comment 3•4 years ago
|
||
Backed out changeset 98349a6be0f6 (Bug 1680512) for causing build bustages in GfxInfo.mm CLOSED TREE
Failure log: https://treeherder.mozilla.org/logviewer?job_id=327723335&repo=autoland&lineNumber=38512
Backout: https://hg.mozilla.org/integration/autoland/rev/258d5d364120a14220b7f5a799a51cd7f58bbc4b
Comment 6•4 years ago
|
||
bugherder |
Description
•