I hit what appears to be the same bug and managed to get a backtrace of the
actual stack smash. Root cause on my machine: the browser's bundled Vulkan
loader crashes inside dlopen while probing the system's Vulkan ICDs during
GPU info collection.

Hardware/software (note the similarity to the reporter's E6420):

  - Lenovo ThinkPad T520 — Sandy Bridge iGPU (2nd Gen Core) + NVIDIA
    Quadro NVS 4200M (GF119M), i.e. the same dual-GPU pairing as the
    reporter's Dell E6420
  - Ubuntu 24.04.4 LTS, X11
  - Vivaldi 8.1.4087.55 (deb, not snap — so this is not
    snap/core24-specific; Vivaldi bundles its own libvulkan.so.1 just as
    the chromium snap's gpu-2404 content does)
  - libvulkan1 1.3.275.0-1build1, mesa-vulkan-drivers 25.2.8-0ubuntu0.24.04.2

Same symptoms as reported: "*** stack smashing detected ***" from the GPU
process, exit_code=134 three times, then FATAL "GPU process isn't usable.
Goodbye." As comment #5 found, --disable-gpu and
--disable-software-rasterizer do NOT help — the GPU info-collection
process still launches and still crashes. The libva iHD error in the logs
is a red herring: it also appears in non-crashing runs.

Backtrace, obtained by running the GPU process under gdb:

  vivaldi --disable-gpu-sandbox --gpu-launcher='gdb -batch -ex run -ex
bt --args'

  *** stack smashing detected ***: terminated
  Thread 1 "vivaldi-bin" received signal SIGABRT, Aborted.
  #0  __pthread_kill_implementation (...) at ./nptl/pthread_kill.c:44
  ...
  #4  0x00007ffff6c288ff in __GI_abort () at ./stdlib/abort.c:79
  #6  0x00007ffff6d36d49 in __GI___fortify_fail (msg="stack smashing detected") 
at ./debug/fortify_fail.c:24
  #7  0x00007ffff6d37fd4 in __stack_chk_fail () at ./debug/stack_chk_fail.c:24
  #8  0x00007ffff6c97e9d in _dlerror_run (operate=dlopen_doit, ...) at 
./dlfcn/dlerror.c:198
  #9  0x00007ffff6c9833f in dlopen_implementation (...) at ./dlfcn/dlopen.c:71
  #10 ___dlopen (...) at ./dlfcn/dlopen.c:81
  #11 0x00007ffff59f05b6 in ?? () from /opt/vivaldi/libvulkan.so.1
  #12 0x0000000000000000 in ?? ()

So the canary trips in glibc's dlerror path while the bundled Vulkan
loader (frame #11) is dlopen'ing an ICD driver library.

Confirming experiments (each a fresh launch, no other flags):

  - VK_LOADER_DRIVERS_DISABLE='*'   -> NO crash, browser fully usable
  - --disable-gpu-sandbox           -> still crashes
  - LIBGL_ALWAYS_SOFTWARE=1         -> still crashes (so not a Mesa GL
                                       driver issue: crocus/llvmpipe irrelevant)

Workaround that survives reboots: put VK_LOADER_DRIVERS_DISABLE=* in
/etc/environment. On this class of hardware (Sandy Bridge + Fermi) there
is no usable hardware Vulkan driver anyway, so nothing is lost.

Given both affected machines have the Intel gen6 + NVS 4200M combination
and nine-ish ICD json files installed (intel_icd, intel_hasvk, nouveau,
nvidia, lvp, ...), the trigger is presumably one of the system ICDs
failing to load in a way the bundled loader's dlopen wrapper doesn't
expect (older bundled Vulkan-Loader vs. current glibc/ICDs?). Reproducing
outside the browser with the same bundled loader, e.g.

  VK_LOADER_DEBUG=all vulkaninfo

(with the distro loader it works fine here) and bisecting with
VK_LOADER_DRIVERS_DISABLE set to individual driver globs should identify
the specific ICD if needed.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2133259

Title:
  Chromium 142.0.7444.175 Snap craches on launch, stack smashing
  detected

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/chromium-browser/+bug/2133259/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to