编辑:原因(或一个原因)似乎是 中的一个段错误libEGL-nvidia
,我猜这会导致glxtest
失败,这会导致 Firefox 认为驱动程序有故障(它们可能部分是)。我收到了 Firefox 111 的更新,但它没有解决问题。
WebGL 在 Firefox 中突然停止工作。我的司机看起来不错。它们都可以正确检测到,即使是 Firefox(如果我强制这样做)也是如此。问题似乎是glxtest
失败,因为它无法检测到我的 GPU,这会导致glxInfo
阻止列表支持。
带有完整故障排除日志的 Pastebin(强制启用 WebGL):https://pastebin.com/cX6ZWFhL
启动错误:
[GFX1-]: No GPUs detected via PCI
[GFX1-]: glxtest: process failed (received signal 11)
没有强制启用 WebGL 的错误:
# WebGL 1 driver renderer
WebGL creation failed:
* WebglAllowWindowsNativeGl:false restricts context creation on this system. ()
* Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)
# WebGL 2 driver renderer
WebGL creation failed:
* AllowWebgl2:false restricts context creation on this system. ()
lspci -vv
输出:
01:00.0 VGA compatible controller: NVIDIA Corporation Device 2507 (rev a1) (prog-if 00 [VGA controller])
Subsystem: Micro-Star International Co., Ltd. [MSI] Device c978
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
Latency: 0
Interrupt: pin A routed to IRQ 138
Region 0: Memory at 50000000 (32-bit, non-prefetchable) [size=16M]
Region 1: Memory at 6000000000 (64-bit, prefetchable) [size=8G]
Region 3: Memory at 6200000000 (64-bit, prefetchable) [size=32M]
Region 5: I/O ports at 4000 [size=128]
Expansion ROM at 51000000 [virtual] [disabled] [size=512K]
Capabilities: <access denied>
Kernel driver in use: nvidia
Kernel modules: nvidiafb, nouveau, nvidia_drm, nvidia
glxinfo
输出:
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
<extension list clipped for readability>
client glx vendor string: NVIDIA Corporation
client glx version string: 1.4
client glx extensions:
<extension list clipped for readability>
Memory info (GL_NVX_gpu_memory_info):
Dedicated video memory: 8192 MB
Total available memory: 8192 MB
Currently available dedicated video memory: 7744 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 3050/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 525.85.05
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
<extension list clipped for readability>
OpenGL version string: 4.6.0 NVIDIA 525.85.05
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)
OpenGL extensions:
<extension list clipped for readability>
OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 525.85.05
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
<extension list clipped for readability>
nvidia-smi
输出:
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 525.85.05 Driver Version: 525.85.05 CUDA Version: 12.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... Off | 00000000:01:00.0 On | N/A |
| 0% 44C P8 7W / 130W | 206MiB / 8192MiB | 2% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
如果这是错误的地方,我很抱歉,很难找到帮助,而且这个问题非常令人沮丧。
答案1
这个问题似乎在版本 114 中得到了修复。我重置了第一次遇到这个问题时使用的设置,尝试让 Firefox 使用 WebGL,但即使没有这个问题,它仍然可以工作。我还没有看到任何地方提到这一点,所以我不知道这是否是由另一个修复引起的,或者我的情况是否发生了变化,但问题对我来说已经消失了。