Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 906962 - www-client/chromium: browsing mega.nz/register crash the browser tab with a SIGSEGV
Summary: www-client/chromium: browsing mega.nz/register crash the browser tab with a S...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: AMD64 Linux
: Normal normal (vote)
Assignee: Chromium Project
URL:
Whiteboard:
Keywords: PATCH, PullRequest
Depends on:
Blocks:
 
Reported: 2023-05-22 21:34 UTC by David
Modified: 2023-06-10 05:09 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David 2023-05-22 21:34:46 UTC
Access to https://mega.nz/register cause a SIGSEGV of the browser (www-client/chromium-113.0.5672.126) tab seconds after the logo is loaded.

Reproducible: Always

Steps to Reproduce:
1. Run Chromium
2. Go to https://mega.nz/register
3.
Actual Results:  
The current tab crash with
Aw, Snap! Something went wrong while displaying this webpage. Error code: SIGSEGV


emerge --info www-client/chromium 
Portage 3.0.44 (python 3.11.3-final-0, default/linux/amd64/17.1/desktop/gnome/systemd/merged-usr, gcc-12, glibc-2.36-r8, 6.1.27-gentoo x86_64)
=================================================================
                         System Settings
=================================================================
System uname: Linux-6.1.27-gentoo-x86_64-11th_Gen_Intel-R-_Core-TM-_i7-1165G7_@_2.80GHz-with-glibc2.36
KiB Mem:    32572864 total,  25444220 free
KiB Swap:    4194300 total,   4194300 free
Timestamp of repository gentoo: Mon, 22 May 2023 18:02:02 +0000
Head commit of repository gentoo: e4d932d020dcf620a54380973dd32b19689986d1

Head commit of repository sunny-overlay: 8b2dba181937a2a88d21444ef65a467e6845cc17

sh bash 5.1_p16-r4
ld GNU ld (Gentoo 2.39 p6) 2.39.0
app-misc/pax-utils:        1.3.5::gentoo
app-shells/bash:           5.1_p16-r4::gentoo
dev-java/java-config:      2.3.1::gentoo
dev-lang/perl:             5.36.0-r2::gentoo
dev-lang/python:           3.11.3::gentoo
dev-lang/rust:             1.66.1::gentoo
dev-util/cmake:            3.26.3::gentoo
dev-util/meson:            1.0.1::gentoo
sys-apps/baselayout:       2.13-r1::gentoo
sys-apps/sandbox:          2.29::gentoo
sys-apps/systemd:          253.3-r1::gentoo
sys-devel/autoconf:        2.13-r7::gentoo, 2.71-r5::gentoo
sys-devel/automake:        1.16.5::gentoo
sys-devel/binutils:        2.39-r5::gentoo
sys-devel/binutils-config: 5.5::gentoo
sys-devel/clang:           15.0.7-r1::gentoo
sys-devel/gcc:             12.2.1_p20230428-r1::gentoo
sys-devel/gcc-config:      2.10::gentoo
sys-devel/libtool:         2.4.7-r1::gentoo
sys-devel/lld:             15.0.7::gentoo
sys-devel/llvm:            15.0.7::gentoo
sys-devel/make:            4.4.1-r1::gentoo
sys-kernel/linux-headers:  6.1::gentoo (virtual/os-headers)
sys-libs/glibc:            2.36-r8::gentoo
Repositories:

gentoo
    location: /usr/portage
    sync-type: git
    sync-uri: https://github.com/gentoo-mirror/gentoo.git
    priority: -1000
    volatile: True

sunny-overlay
    location: /usr/local/portage/overlay/sunny-overlay
    sync-type: git
    sync-uri: https://github.com/dguglielmi/sunny-overlay.git
    masters: gentoo
    volatile: True

xps13-9310-overlay
    location: /usr/local/portage/overlay/xps13-9310-overlay
    masters: gentoo
    volatile: True

ACCEPT_KEYWORDS="amd64"
ACCEPT_LICENSE="@FREE"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=native -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/share/gnupg/qualified.txt"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/dconf /etc/env.d /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d"
CXXFLAGS="-march=native -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
ENV_UNSET="CARGO_HOME DBUS_SESSION_BUS_ADDRESS DISPLAY GDK_PIXBUF_MODULE_FILE GOBIN GOPATH PERL5LIB PERL5OPT PERLPREFIX PERL_CORE PERL_MB_OPT PERL_MM_OPT XAUTHORITY XDG_CACHE_HOME XDG_CONFIG_HOME XDG_DATA_HOME XDG_RUNTIME_DIR XDG_STATE_HOME"
FCFLAGS="-O2 -pipe"
FEATURES="assume-digests binpkg-docompress binpkg-dostrip binpkg-logs buildpkg-live config-protect-if-modified distlocks ebuild-locks fixlafiles ipc-sandbox merge-sync multilib-strict network-sandbox news parallel-fetch pid-sandbox preserve-libs protect-owned qa-unresolved-soname-deps sandbox sfperms strict unknown-features-warn unmerge-logs unmerge-orphans userfetch userpriv usersandbox usersync xattr"
FFLAGS="-O2 -pipe"
GENTOO_MIRRORS="http://distfiles.gentoo.org"
LANG="en_US.UTF-8"
LC_ALL="en_US.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--as-needed"
LEX="flex"
LINGUAS="fr"
MAKEOPTS="-j9"
PKGDIR="/var/cache/binpkgs"
PORTAGE_CONFIGROOT="/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --omit-dir-times --compress --force --whole-file --delete --stats --human-readable --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --exclude=/.git"
PORTAGE_TMPDIR="/var/tmp"
SHELL="/bin/bash"
USE="X a52 aac acl acpi alsa amd64 appindicator bluetooth branding bzip2 cairo cdda cdr cli colord crypt cups dbus dri dts dvd dvdr eds encode evo exif flac fortran fprint gdbm gif gnome gnome-keyring gnome-online-accounts gpm gstreamer gtk gui iconv icu introspection ipv6 jpeg keyring lcms libnotify libtirpc lvm mad mng mp3 mp4 mpeg multilib nautilus ncurses networkmanager nls nptl ogg opengl openmp pam pango pcre pdf pipewire png policykit ppds pulseaudio readline sdl seccomp sound spell ssl startup-notification svg sysprof systemd test-rust tiff tracker truetype udev udisks unicode upower usb v4l vaapi vorbis wayland wifi wxwidgets x264 xattr xcb xft xml xv xvid zlib" ABI_X86="64" ADA_TARGET="gnat_2021" APACHE2_MODULES="authn_core authz_core socache_shmcb unixd actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache cgi cgid dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CALLIGRA_FEATURES="karbon sheets words" COLLECTD_PLUGINS="df interface irq load memory rrdtool swap syslog" CPU_FLAGS_X86="aes avx avx2 avx512f avx512dq avx512cd avx512bw avx512vl avx512vbmi f16c fma3 mmx mmxext pclmul popcnt rdrand sha sse sse2 sse3 sse4_1 sse4_2 ssse3" ELIBC="glibc" GPSD_PROTOCOLS="ashtech aivdm earthmate evermore fv18 garmin garmintxt gpsclock greis isync itrax mtk3301 nmea ntrip navcom oceanserver oldstyle oncore rtcm104v2 rtcm104v3 sirf skytraq superstar2 timing tsip tripmate tnt ublox ubx" INPUT_DEVICES="libinput" KERNEL="linux" L10N="fr" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LIBREOFFICE_EXTENSIONS="presenter-console presenter-minimizer" LUA_SINGLE_TARGET="lua5-1" LUA_TARGETS="lua5-1" OFFICE_IMPLEMENTATION="libreoffice" PHP_TARGETS="php7-4 php8-0" POSTGRES_TARGETS="postgres12 postgres13" PYTHON_SINGLE_TARGET="python3_11" PYTHON_TARGETS="python3_11" RUBY_TARGETS="ruby30" VIDEO_CARDS="intel i915 i965 iris" XTABLES_ADDONS="quota2 psd pknock lscan length2 ipv4options ipset ipp2p iface geoip fuzzy condition tee tarpit sysrq proto steal rawnat logmark ipmark dhcpmac delude chaos account"
Unset:  ADDR2LINE, AR, ARFLAGS, AS, ASFLAGS, CC, CCLD, CONFIG_SHELL, CPP, CPPFLAGS, CTARGET, CXX, CXXFILT, ELFEDIT, EMERGE_DEFAULT_OPTS, EXTRA_ECONF, F77FLAGS, FC, GCOV, GPROF, INSTALL_MASK, LD, LFLAGS, LIBTOOL, MAKE, MAKEFLAGS, NM, OBJCOPY, OBJDUMP, PORTAGE_BINHOST, PORTAGE_BUNZIP2_COMMAND, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, RANLIB, READELF, RUSTFLAGS, SIZE, STRINGS, STRIP, YACC, YFLAGS

=================================================================
                        Package Settings
=================================================================

www-client/chromium-113.0.5672.126::gentoo was built with the following:
USE="X cups gtk4 hangouts official (pic) proprietary-codecs pulseaudio screencast suid system-harfbuzz system-icu system-png vaapi wayland widevine (-component-build) -custom-cflags -debug (-headless) -kerberos (-libcxx) (-lto) -pax-kernel (-pgo) -qt5 (-selinux) (-system-av1) (-system-ffmpeg)" ABI_X86="(64)" L10N="fr -af -am -ar -bg -bn -ca -cs -da -de -el -en-GB -es -es-419 -et -fa -fi -fil -gu -he -hi -hr -hu -id -it -ja -kn -ko -lt -lv -ml -mr -ms -nb -nl -pl -pt-BR -pt-PT -ro -ru -sk -sl -sr -sv -sw -ta -te -th -tr -uk -ur -vi -zh-CN -zh-TW"
CXXFLAGS="-march=native -O2 -pipe -fno-tree-vectorize"
Comment 1 David 2023-05-22 21:43:24 UTC
No debug symbols with my current build of chromium, so I don't know how to really use the core dump file:

Using host libthread_db library "/usr/lib64/libthread_db.so.1".
Core was generated by `/usr/lib64/chromium-browser/chrome --type=renderer --crashpad-handler-pid=31176'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x0000560001c08550 in ?? ()
[Current thread is 1 (Thread 0x7f360d99d600 (LWP 1))]
(gdb) bt
#0  0x0000560001c08550 in  ()
#1  0x0000560000e47c06 in  ()
#2  0x0000323900214e00 in  ()
#3  0x0000323900a93238 in  ()
#4  0x0000323900778e58 in  ()
#5  0x00005600067d3e80 in data_start ()
#6  0x000056000161b2f0 in  ()
#7  0x0000323900a932b0 in  ()
#8  0x00007ffcd46e77c0 in  ()
#9  0x0000560000e480c8 in  ()
#10 0x0000323900778e58 in  ()
#11 0x00005600067d3e80 in data_start ()
#12 0x0000000000000000 in  ()
(gdb) 

I reproduce the issue on two Gentoo systems, but not on a Debian host (same chromium upstream version).
Comment 2 Maciej S. Szmigiero 2023-05-23 16:46:32 UTC
Confirmed in www-client/chromium-113.0.5672.126 - it's a NULL pointer deference in blink::RuntimeEnabledFeaturesBase::DocumentPictureInPictureAPIEnabled(), with the NULL pointer coming from blink::HTMLMediaElement::ShouldReusePlayer().

Already fixed yesterday by the upstream in https://chromium.googlesource.com/chromium/src.git/+/2af2d08972d14d5bdd91e0515eb5b15b4444aee9

With the above patch applied Chromium no longer crashes for me at the aforementioned site.
Comment 3 David 2023-05-24 08:58:22 UTC
(In reply to Maciej S. Szmigiero from comment #2)
> Confirmed in www-client/chromium-113.0.5672.126 - it's a NULL pointer
> deference in
> blink::RuntimeEnabledFeaturesBase::DocumentPictureInPictureAPIEnabled(),
> with the NULL pointer coming from
> blink::HTMLMediaElement::ShouldReusePlayer().
> 
> Already fixed yesterday by the upstream in
> https://chromium.googlesource.com/chromium/src.git/+/
> 2af2d08972d14d5bdd91e0515eb5b15b4444aee9
> 
> With the above patch applied Chromium no longer crashes for me at the
> aforementioned site.

Thank you, the issue is also fixed for me with the patch suggested by Maciej.
Comment 4 Larry the Git Cow gentoo-dev 2023-06-10 05:09:27 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f747a372822f32bb299dc401b548db527c9a20f1

commit f747a372822f32bb299dc401b548db527c9a20f1
Author:     Matt Jolly <Matt.Jolly@footclan.ninja>
AuthorDate: 2023-06-07 14:31:31 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2023-06-10 05:09:01 +0000

    www-client/chromium: add 114.0.5735.110
    
    Add myself as a maintainer
    
    Bug: https://bugs.gentoo.org/907999
    Closes: https://bugs.gentoo.org/906911
    Closes: https://bugs.gentoo.org/906962
    Signed-off-by: Matt Jolly <Matt.Jolly@footclan.ninja>
    Closes: https://github.com/gentoo/gentoo/pull/31344
    Signed-off-by: Sam James <sam@gentoo.org>

 www-client/chromium/Manifest                       |    2 +
 www-client/chromium/chromium-114.0.5735.110.ebuild | 1268 ++++++++++++++++++++
 .../chromium/files/chromium-114-compiler.patch     |  171 +++
 www-client/chromium/files/chromium-114-gcc12.patch |   30 +
 .../chromium/files/chromium-114-sigsegv-dom.patch  |   73 ++
 www-client/chromium/metadata.xml                   |    8 +
 6 files changed, 1552 insertions(+)