You are not logged in.

#1 2023-01-21 16:42:22

plankter
Member
Registered: 2023-01-21
Posts: 5

Chromium based programs crash on text/image/content drag

All Chromium based programs crash whenever I select some text or image on a webpage and drag it. The same thing also happens when I drag YouTube subtitles to move them around the video. I tried launching the program from the command line to see any error messages but I only get a segmentation fault core dumped message. Here is a screen recording of this phenomenon taking place: https://streamable.com/5b3xav

The Ibus warnings go away if I uninstall Mozc but the segmentation fault remains so I don't think that's the problem. I have observed this in Google Chrome, Chromium, and VS Codium. VS Codium crashes without any messages when launched with the --verbose flag. It happens in KDE Plasma on X11, as well as both on GNOME on X11 and GNOME on Wayland.

There are other graphics-related problems in my installation (for example, polybar also crashes with a segmentation fault almost immediately after launch) so maybe there are some problems with my graphics drivers? If I remember correctly I installed the nvidia package as per the instructions on the wiki page about NVIDIA. "lspci | grep VGA" outputs the following:

01:00.0 VGA compatible controller: NVIDIA Corporation TU117M [GeForce GTX 1650 Ti Mobile] (rev a1)
05:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Renoir (rev c6)

"pacman -Qs | grep nvidia" outputs the following:

local/egl-wayland 2:1.1.11-2
    EGLStream-based Wayland external platform
local/libvdpau 1.5-1
    Nvidia VDPAU library
local/nvidia 525.78.01-1
    NVIDIA drivers for linux
local/nvidia-utils 525.78.01-1
    NVIDIA drivers utilities

I don't know what other information I should provide. The other problems aren't that important so I don't mind them for the time being but I use Chromium based programs frequently so I really need some help in resolving this. What should I do?

Offline

#2 2023-01-21 16:55:31

loqs
Member
Registered: 2014-03-06
Posts: 17,440

Re: Chromium based programs crash on text/image/content drag

You can obtain the backtrace from the coredump by installing debuginfod  then:

DEBUGINFOD_URLS="https://debuginfod.archlinux.org/" coredumpctl bt #

Core_dump#Examining_a_core_dump
Getting_traces
Debuginfod

Offline

#3 2023-01-21 18:01:42

plankter
Member
Registered: 2023-01-21
Posts: 5

Re: Chromium based programs crash on text/image/content drag

loqs wrote:

You can obtain the backtrace from the coredump by installing debuginfod  then:

DEBUGINFOD_URLS="https://debuginfod.archlinux.org/" coredumpctl bt #

Core_dump#Examining_a_core_dump
Getting_traces
Debuginfod

This outputs "Unknown command verb bt.". I tried "gdb bt" instead of just bt, then I got "No match found.". Then I tried to replace "#" with the PID as shown in the output of "coredumpctl list", but I still got "No match found.". When I do just "gdb" and then the PID, I get to the gdb prompt. Then if I type bt, I get the following (after some auto downloads):

Core was generated by `/opt/google/chrome/chrome --enable-features=WebUIDarkMode --force-dark-mode   '.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007ff9c0649ff5 in realpath () from /usr/lib/libc.so.6
[Current thread is 1 (Thread 0x7ff9aa1fc6c0 (LWP 45587))]
(gdb) bt
#0  0x00007ff9c0649ff5 in realpath () at /usr/lib/libc.so.6
#1  0x000055e451d81b80 in  ()
#2  0x0000022400225600 in  ()
#3  0x00007ff9a99fed00 in  ()
#4  0xaaaaaaaaaaaaaaaa in  ()

and then it is indefinitely "0xaaaaaaaaaaaaaaaa in  ()" until line 517. How can I make sense of this?

Last edited by plankter (2023-01-21 18:04:53)

Offline

#4 2023-01-21 18:09:11

loqs
Member
Registered: 2014-03-06
Posts: 17,440

Re: Chromium based programs crash on text/image/content drag

Try before invoking gdb

export DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"

You could also try the following which should debug the last coredump recorded

coredumpctl debug -1

Offline

#5 2023-01-21 19:17:03

plankter
Member
Registered: 2023-01-21
Posts: 5

Re: Chromium based programs crash on text/image/content drag

loqs wrote:

Try before invoking gdb

export DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"

You could also try the following which should debug the last coredump recorded

coredumpctl debug -1

I get the same output as before

Offline

#6 2023-01-28 21:24:22

iamkarlson
Member
Registered: 2023-01-17
Posts: 24

Re: Chromium based programs crash on text/image/content drag

Have you submitted this bug to the chromium team or any other mentioned product? I'm getting the same for Vivaldi browser that happens quite often. I'm trying to fix it with some CSS that prevents dragging but with no luck so far.

Offline

#7 2023-01-29 04:58:04

topcat01
Member
Registered: 2019-09-17
Posts: 125

Re: Chromium based programs crash on text/image/content drag

plankter wrote:
loqs wrote:

Try before invoking gdb

export DEBUGINFOD_URLS="https://debuginfod.archlinux.org/"

You could also try the following which should debug the last coredump recorded

coredumpctl debug -1

I get the same output as before

I think you are running AUR's google-chrome, not the Arch chromium package. Not sure if debug info will work in this case.

Edit: Can you try disabling hardware acceleration?

Last edited by topcat01 (2023-01-29 05:00:51)

Offline

#8 2023-02-02 11:49:56

plankter
Member
Registered: 2023-01-21
Posts: 5

Re: Chromium based programs crash on text/image/content drag

topcat01 wrote:

I think you are running AUR's google-chrome, not the Arch chromium package. Not sure if debug info will work in this case.

Edit: Can you try disabling hardware acceleration?

Disabling hardware acceleration does not change anything. Yes I was using Google Chrome, doing it with Chromium, I get many lines that are similar to the one on Google Chrome but with different hexadecimal numbers, and finally this new output:

Core was generated by `/usr/lib/chromium/chromium'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f4abd652fd5 in __GI___realpath (name=0xccc0278ea80 "/usr/share/icons",
    resolved=0x7f4aa9bfdc90 '\252' <repeats 200 times>...) at canonicalize.c:427
427	{
[Current thread is 1 (Thread 0x7f4aaa3fc6c0 (LWP 4534))]

Offline

#9 2023-02-02 12:47:34

seth
Member
Registered: 2012-09-03
Posts: 51,699

Re: Chromium based programs crash on text/image/content drag

Same as https://bbs.archlinux.org/viewtopic.php?id=283192 - I suspect some infinite recursion in JS
Because of the symptoms:
1. does the webpage where you try to drag the test matter (does it happen on this board)?
2. Does it happen when you disable all extensions, eg. --disable-extensions or using the porn mode?

Offline

#10 2023-02-03 12:22:56

plankter
Member
Registered: 2023-01-21
Posts: 5

Re: Chromium based programs crash on text/image/content drag

seth wrote:

Same as https://bbs.archlinux.org/viewtopic.php?id=283192 - I suspect some infinite recursion in JS
Because of the symptoms:
1. does the webpage where you try to drag the test matter (does it happen on this board)?
2. Does it happen when you disable all extensions, eg. --disable-extensions or using the porn mode?

1. No, it happens on all webpages, including this one.
2. Yes, launching Chromium with --disable-extensions did not change anything.

Offline

#11 2023-02-03 13:46:48

seth
Member
Registered: 2012-09-03
Posts: 51,699

Re: Chromium based programs crash on text/image/content drag

'key, let's try something different:

Core was generated by `/usr/lib/chromium/chromium'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0  0x00007f4abd652fd5 in __GI___realpath (name=0xccc0278ea80 "/usr/share/icons",
    resolved=0x7f4aa9bfdc90 '\252' <repeats 200 times>...) at canonicalize.c:427
427	{
[Current thread is 1 (Thread 0x7f4aaa3fc6c0 (LWP 4534))]

Which cursor theme do you use?
https://wiki.archlinux.org/title/Cursor_themes#Manually

Chromium will set the cursor to "forbidden", but not necessarily by that name and not all cursor themes are equally complete…

#!/bin/bash

# unassigned yet
# X_cursor
# color-picker
# crossed_circle
# pencil
# pirate
# plus


 L_PTR="left_ptr arrow dnd-none op_left_arrow"
 CROSS="cross diamond-cross cross-reverse crosshair"
UP_ARR="up_arrow center_ptr sb_up_arrow centre_ptr"
 WAIT="wait watch progress"
 IBEAM="ibeam xterm text"
 FLEUR="fleur size_all"
 HAND2="pointing_hand pointer hand hand1 hand2 e29285e634086352946a0e7090d73106 9d800788f1b08800ae810202380a0822"
SZ_VER="size_ver sb_v_double_arrow v_double_arrow n-resize s-resize col-resize top_side bottom_side base_arrow_up base_arrow_down based_arrow_down based_arrow_up 00008160000006810000408080010102"
SZ_HOR="size_hor sb_h_double_arrow h_double_arrow e-resize w-resize row-resize right_side left_side 028006030e0e7ebffc7f7070c0600140"
SZ_BDG="size_bdiag fd_double_arrow bottom_left_corner top_right_corner fcf1c3c7cd4491d801f1e1c78f100000"
SZ_FDG="size_fdiag bd_double_arrow bottom_right_corner top_left_corner c7088f0f3e6c8088236ef8e1e3e70000"
WHATST="whats_this left_ptr_help help question_arrow dnd-ask d9ce0ab605698f320427677b458ad60b 5c6cd98b3f3ebcb1f9c7f1c204630408 "
SPLT_H="split_h 14fef782d02440884392942c11205230 size_hor"
SPLT_V="split_v 2870a09082c103050810ffdffffe0204 size_ver"
FORBID="forbidden circle dnd-no-drop not-allowed 03b6e0fcb3499374a867c041f52298f0"
LPWTCH="left_ptr_watch half-busy 3ecb610c1bf2410f44200f48c40d3599 00000000000000020006000e7e9ffc3f 08e8e1c95fe2fc01f976f1e063a24ccd"
O_HAND="openhand all_scroll all-scroll 9141b49c8149039304290b508d208c40"
C_HAND="closedhand 05e88622050804100c20044008402080 4498f0e0c1937ffe01fd06f973665830 9081237383d90e509aa00f00170e968f fcf21c00b30f7e3f83fe0dfd12e71cff"
 ALIAS="dnd-link link alias 3085a0e285430894940527032f8b26df 640fb0e74195791501fd1ed57b41487f a2a266d0498c3104214a47bd64ab0fc8"
  COPY="dnd-copy copy 1081e37283d90000800003c07f3ef6bf 6407b0e94181790501fd1e167b474872 b66166c04f8c3109214a4fbd64a50fc8"
  MOVE="dnd-move move"

SHAPES="L_PTR CROSS UP_ARR WAIT IBEAM FLEUR HAND2 SZ_VER SZ_HOR SZ_BDG SZ_FDG WHATST SPLT_H SPLT_V FORBID LPWTCH O_HAND C_HAND ALIAS COPY MOVE"

fix_false_group() {
    if [ -L "$1" ]; then
        rm "$1" # symlink, just get rid of it and have the script restore it properly
    elif [ -e "$1" ]; then
        # file exists and is a real file. remove all false symlinks to it
        for ALTERNATIVE in $2; do
            if [ -L "$ALTERNATIVE" ]; then
                TARGET="$(realpath $ALTERNATIVE)"
                if [ "$(basename $TARGET)" = "$1" ]; then
                    rm "$ALTERNATIVE"
                fi
            fi
        done
    fi
}

fix_cursors()  {
    # those two have been swapped in KDE and falsely linked by v0.1 of this script
    # ensure they do NOT point into the wrong group (2nd parameter)
    fix_false_group "fcf1c3c7cd4491d801f1e1c78f100000" "$SZ_FDG"
    fix_false_group "c7088f0f3e6c8088236ef8e1e3e70000" "$SZ_BDG"
    if [ "$1" = "override" ]; then
        for name in *; do
            if [ -L "$name" ]; then
                rm "$name"
            fi
        done
    fi
    for GROUP in $SHAPES; do
        eval SHAPE='$'$GROUP
        echo $SHAPE
        unset PRESENT
        for ALTERNATIVE in $SHAPE; do
            if [ -e $ALTERNATIVE ]; then
                PRESENT=$ALTERNATIVE
                break
            fi
        done
        if [ -z $PRESENT ]; then
            echo "*** WARNING *** No usable cursor for $GROUP"
            continue
        else
            echo $PRESENT
        fi
        for ALTERNATIVE in $SHAPE; do
            if [ ! -e $ALTERNATIVE ]; then
                ln -s $PRESENT $ALTERNATIVE
            fi
        done
    done
}

if [ "$(basename $PWD)" != "cursors" ]; then
    cd ~/.icons
    for name in *; do
        if [ -d "$name/cursors" ]; then
            echo "Fixing theme: $name"
            pushd "$name/cursors" > /dev/null
            fix_cursors $1
            popd > /dev/null
        fi
    done
else
    fix_cursors $1
fi

I wrote that a decade ago - let's hope the cursor names didn't change to drastically since then (but I ran it on ever theme on my system, so I should get the same mess wink

Locally installed cursor themeswill be in ~/.icons.
If you enter the "cursors" directory of your theme and run the script it'll add symlinks for known cursor names.
Otherwise it'll enter your ~/.icons and fix every theme it finds in there.

Offline

Board footer

Powered by FluxBB