Bug#1012548: libwebkit2gtk-4.1-0: Offline renderer SIGSEGV on i386

karogyoker karogyoker2+debbug at gmail.com
Fri Jun 10 15:17:58 BST 2022


Package: libwebkit2gtk-4.1-0
Followup-For: Bug #1012548
X-Debbugs-Cc: karogyoker2+debbug at gmail.com

Dear Maintainer,

Based on the stack trace I've found the problematic line on GitHub. It is
calling ldmxcsr in an inline asm block. It does something with Web Audio API. I
checked the history for the file (wasn't much) and everything seemed fine. I
tried a sample code from MDN[1][2]. It caused the same segfault. On the Win10
ISO download page Web Audio API is being used for browser fingerprinting, I
guess.

I wrote a little C++[3] program to test my mxcsr register. On my other PC it
ran fine. On the Athlon XP it segfaulted for some values only. I found that the
7th bit and bits 17-32 are not working. Reading via stmxcsr works and gives
back the default value 1 1111 1000 0000 (0x1f80).

This CPU has been downclocked in BIOS to the lowest possible FSB, otherwise has
been restarting occasionally. That's why its clockspeed is ~1150MHz instead of
~1950MHz. Next year it celebrates its 20th birthday.

Case can be closed as hardware failure.
Thank you for your kind help and support.

[1]: https://developer.mozilla.org/en-
US/docs/Web/API/Web_Audio_API/Using_Web_Audio_API
[2]: https://codepen.io/Rumyra/pen/qyMzqN/
[3]:
#include <cstdio>
int main()
{
  int shiftby = 0; // segfaults: 6, [16-31]
  int temp = 1 << shiftby;
  printf("%i", temp);
  for (int i = 0; i < 1000000; i++)
  {
    asm volatile("ldmxcsr %0" : : "m" (temp));
  }

  int result;
  asm volatile("stmxcsr %0" : "=m" (result));

  printf("%i", result);

  return 0;
}


-- System Information:
Debian Release: bookworm/sid
  APT prefers testing-debug
  APT policy: (500, 'testing-debug'), (500, 'testing')
Architecture: i386 (i686)

Kernel: Linux 5.17.0-1-686-pae (SMP w/1 CPU thread; PREEMPT)
Kernel taint flags: TAINT_WARN
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8), LANGUAGE=en_US:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages libwebkit2gtk-4.1-0 depends on:
ii  bubblewrap                      0.6.2-1
ii  gstreamer1.0-plugins-base       1.20.2-2
ii  gstreamer1.0-plugins-good       1.20.2-1
ii  libatk1.0-0                     2.38.0-1
ii  libc6                           2.33-7
ii  libcairo2                       1.16.0-5
ii  libegl1                         1.4.0-1
ii  libenchant-2-2                  2.3.2-1
ii  libfontconfig1                  2.13.1-4.4
ii  libfreetype6                    2.12.1+dfsg-2
ii  libgcc-s1                       12.1.0-2
ii  libgcrypt20                     1.10.1-2
ii  libgdk-pixbuf-2.0-0             2.42.8+dfsg-1
ii  libglib2.0-0                    2.72.1-1
ii  libglx0                         1.4.0-1
ii  libgstreamer-gl1.0-0            1.20.2-2
ii  libgstreamer-plugins-base1.0-0  1.20.2-2
ii  libgstreamer1.0-0               1.20.2-1
ii  libgtk-3-0                      3.24.34-1
ii  libharfbuzz-icu0                2.7.4-1+b1
ii  libharfbuzz0b                   2.7.4-1+b1
ii  libhyphen0                      2.8.8-7
ii  libicu71                        71.1-3
ii  libjavascriptcoregtk-4.1-0      2.36.3-1
ii  libjpeg62-turbo                 1:2.1.2-1
ii  liblcms2-2                      2.12~rc1-2
ii  libmanette-0.2-0                0.2.6-3
ii  libnotify4                      0.7.12-1
ii  libopengl0                      1.4.0-1
ii  libopenjp2-7                    2.4.0-6
ii  libpango-1.0-0                  1.50.7+ds-1
ii  libpng16-16                     1.6.37-5
ii  libseccomp2                     2.5.4-1
ii  libsecret-1-0                   0.20.5-2
ii  libsoup-3.0-0                   3.0.6-1
ii  libsqlite3-0                    3.38.5-1
ii  libstdc++6                      12.1.0-2
ii  libsystemd0                     250.4-1
ii  libtasn1-6                      4.18.0-4
ii  libwayland-client0              1.20.0-1
ii  libwayland-egl1                 1.20.0-1
ii  libwayland-server0              1.20.0-1
ii  libwebp7                        1.2.2-2+b1
ii  libwebpdemux2                   1.2.2-2+b1
ii  libwoff1                        1.0.2-1+b1
ii  libwpe-1.0-1                    1.12.0-1
ii  libwpebackend-fdo-1.0-1         1.12.0-1
ii  libx11-6                        2:1.7.5-1
ii  libxcomposite1                  1:0.4.5-1
ii  libxdamage1                     1:1.1.5-2
ii  libxml2                         2.9.14+dfsg-1
ii  libxslt1.1                      1.1.34-4
ii  xdg-dbus-proxy                  0.1.4-1
ii  zlib1g                          1:1.2.11.dfsg-4

Versions of packages libwebkit2gtk-4.1-0 recommends:
ii  gstreamer1.0-gl           1.20.2-2
ii  gstreamer1.0-libav        1.20.2-1
ii  gstreamer1.0-plugins-bad  1.20.2-1
ii  libgl1-mesa-dri           22.0.5-1
ii  xdg-desktop-portal-gtk    1.14.0-1

Versions of packages libwebkit2gtk-4.1-0 suggests:
ii  gstreamer1.0-alsa  1.20.2-2

-- no debconf information



More information about the Pkg-webkit-maintainers mailing list