New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 793035 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner: ----
Closed: Feb 2018
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Wrong primary GPU determined on dual GPU systems (iGPU + dGPU (e.g. NVIDIA Optimus))

Reported by eyen...@gmail.com, Dec 7 2017

Issue description

UserAgent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.84 Safari/537.36

Example URL:

Steps to reproduce the problem:
1. Own a iGPU and dGPU system.
2. Use bumblebee (or other ways) to disable the power hungry dGPU.
3. Look at chrome://gpu and see that chromium fails to "GPU process was unable to boot: GPU process launch failed."

What is the expected behavior?
Selection of the iGPU.

glxinfo extract:
Extended renderer info (GLX_MESA_query_renderer):
    Vendor: Intel Open Source Technology Center (0x8086)
    Device: Mesa DRI Intel(R) Haswell Mobile  (0x416)
    Version: 17.2.6
    Accelerated: yes
    Video memory: 1536MB
    Unified memory: yes
    Preferred profile: core (0x1)
    Max core profile version: 4.5
    Max compat profile version: 3.0
    Max GLES1 profile version: 1.1
    Max GLES[23] profile version: 3.1
OpenGL vendor string: Intel Open Source Technology Center
OpenGL renderer string: Mesa DRI Intel(R) Haswell Mobile
OpenGL core profile version string: 4.5 (Core Profile) Mesa 17.2.6
OpenGL core profile shading language version string: 4.50
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

What went wrong?
Selection of the dGPU.

Did this work before? Yes Not sure - I would guess 58 or earlier.

Is it a problem with Flash or HTML5? N/A

Does this work in other browsers? Yes

Chrome version: 63.0.3239.84  Channel: n/a
OS Version: Arch - latest
Flash Version: -

Contents of chrome://gpu: 
Note: To properly save this page, select the "Webpage, Complete" option in the Save File dialog.
Graphics Feature Status
Canvas: Software only. Hardware acceleration disabled
CheckerImaging: Disabled
Flash: Software only, hardware acceleration unavailable
Flash Stage3D: Software only, hardware acceleration unavailable
Flash Stage3D Baseline profile: Software only, hardware acceleration unavailable
Compositing: Software only, hardware acceleration unavailable
Multiple Raster Threads: Unavailable
Native GpuMemoryBuffers: Software only, hardware acceleration unavailable
Rasterization: Software only, hardware acceleration unavailable
Video Decode: Software only, hardware acceleration unavailable
Video Encode: Software only, hardware acceleration unavailable
WebGL: Unavailable
WebGL2: Unavailable
Problems Detected
GPU process was unable to boot: GPU process launch failed.
Disabled Features: all
Accelerated 2D canvas is unavailable: either disabled via blacklist or the command line.
Disabled Features: 2d_canvas
Checker-imaging has been disabled via finch trial or the command line.
Disabled Features: checker_imaging
Version Information
Data exported	07/12/2017, 20:38:20
Chrome version	Chrome/63.0.3239.84
Operating system	Linux 4.14.4-1-ck-haswell
Software rendering list version	0
Driver bug list version	10.34
ANGLE commit id	unknown hash
2D graphics backend	Skia/63 dbae7001c9805fb0a4b18fd0cbc889941cb39db4-
Command Line	/usr/lib/chromium/chromium --enable-native-gpu-memory-buffers --force-device-scale-factor=1.6 --flag-switches-begin --disable-accelerated-2d-canvas --enable-fast-unload --enable-gpu-rasterization --enable-zero-copy --gpu-rasterization-msaa-sample-count=0 --ignore-gpu-blacklist --enable-features=ExpensiveBackgroundTimerThrottling,OffMainThreadFetch --flag-switches-end
Driver Information
Initialization time	0
In-process GPU	true
Passthrough Command Decoder	false
Supports overlays	false
Sandboxed	false
GPU0	VENDOR = 0x10de, DEVICE= 0x0fe4 *ACTIVE*
GPU1	VENDOR = 0x8086, DEVICE= 0x0416
Optimus	true
Optimus	true
AMD switchable	false
Driver vendor	NVIDIA
Driver version	387.22
Driver date	
Pixel shader version	
Vertex shader version	
Max. MSAA samples	
Machine model name	
Machine model version	
GL_VENDOR	NVIDIA Corporation
GL_RENDERER	GeForce GT 750M/PCIe/SSE2
GL_VERSION	4.6.0 NVIDIA 387.22
GL_EXTENSIONS	
Disabled Extensions	
Window system binding vendor	
Window system binding version	
Window system binding extensions	
Window manager	i3
XDG_CURRENT_DESKTOP	i3
Compositing manager	No
Direct rendering	Yes
Reset notification strategy	0x0000
GPU process crash count	1
System visual ID	0
RGBA visual ID	0
Compositor Information
Tile Update Mode	Zero-copy
Partial Raster	Enabled
GpuMemoryBuffers Status
ATC	Software only
ATCIA	Software only
DXT1	Software only
DXT5	Software only
ETC1	Software only
R_8	Software only
R_16	Software only
RG_88	Software only
BGR_565	Software only
RGBA_4444	Software only
RGBX_8888	Software only
RGBA_8888	Software only
BGRX_8888	Software only
BGRA_8888	Software only
RGBA_F16	Software only
YVU_420	Software only
YUV_420_BIPLANAR	Software only
UYVY_422	Software only
Display(s) Information
Info	Display[21691165392764928] bounds=0,1125 2000x1125, workarea=0,1125 2000x1125, scale=1.6, external
Color space information	{primaries:INVALID, transfer:INVALID, matrix:INVALID, range:INVALID, icc_profile_id:0}
Bits per color component	8
Bits per pixel	24
Info	Display[4693785849697538] bounds=0,0 2000x1125, workarea=0,0 2000x1125, scale=1.6, external
Color space information	{primaries:INVALID, transfer:INVALID, matrix:INVALID, range:INVALID, icc_profile_id:0}
Bits per color component	8
Bits per pixel	24
Log Messages
GpuProcessHostUIShim: The GPU process exited with code 1024.

This is quite similar to [1] which is "WontFix" because 'it is not a chromium bug'. That reporter also opened an issue against ANGLE [2] and that too is "WontFix" as 'ANGLE is not yet used for Linux' and want that bug being opened against chromium. If this is _really_ not a chromium bug, please do tell me where to open the issue "correctly".

Thank you!

[1] https://bugs.chromium.org/p/chromium/issues/detail?id=749922
[2] https://bugs.chromium.org/p/angleproject/issues/detail?id=2120
 
Cc: vamshi.k...@techmahindra.com
Labels: TE-NeedsTriageFromHYD Needs-Triage-M63 Triaged-ET
"@Inhouse: Could some one from inhouse team have a look into this issue as it is related to dual GPU systems (iGPU + dGPU). Hence adding the label TE-NeedsTriageFromHYD.

Thanks!"
I maintain Chromium for Arch Linux. According to another Arch developer who has a dual GPU system, after upgrading to Chromium 63 "it detects an optimus system and attempts to use the NVIDIA GPU, which fails because the nvidia driver is present but not loaded". He "fixed" it by deleting "$HOME/.config/chromium/Local State".

Based on the above "fix" it's possible that the issue does not happen with a clean profile. The original reporter might want to try installing Chrome 62 and upgrading to Chrome 63 to see if the same issue occurs.

(The Arch Linux build has enable_swiftshader=false, but that shouldn't matter I think.)

Comment 3 by eyen...@gmail.com, Dec 9 2017

Deleting "$HOME/.config/chromium/Local State" does indeed resolve the issue for me.

Comment 4 by hdodda@chromium.org, Dec 11 2017

Cc: hdodda@chromium.org
Labels: -TE-NeedsTriageFromHYD TE-NeedsTriageFromMTV
@MTVTeam-- Requesting someone from MTV Team to look into it as In-House team doesn't have the dual GPU Linux Machine to check this issue.

Thanks!

Comment 5 by eyen...@gmail.com, Dec 11 2017

Apparently deleting Local State is not a permanent solution as the dGPU was again selected today.
Components: -Internals>Media Internals>GPU

Comment 7 by piman@chromium.org, Feb 5 2018

Cc: zmo@chromium.org
Labels: Needs-Feedback
It looks like glxinfo and Chrome are picking up a different GL driver (mesa vs NVIDIA). 

2 questions:
1- does it repro on current dev?
2- can you tell where glxinfo is loading the driver from? Maybe 'ldd `which glxinfo`' would show it.

Comment 8 by zmo@chromium.org, Feb 5 2018

Status: Fixed (was: Unconfirmed)
Actually after  crbug.com/744658 , we no longer cache GL strings in local state.

So the latest Chromium build should work fine.

Sign in to add a comment