For years my system has had lock-up/freeze issues. Just recently I’ve been checking journalctl for this. In this time the lock-up has always been related to Firefox. But a while back I changed from Chrome to Firefox, and before changing the same problem also had been consistently occurring with Chrome.
I’ve also tried a few different Radeons in this time, without noticing much. At one point, I couldn’t get the machine to boot and found that simply reseating the CPU with new thermal paste managed to clear the issue. Could this be CPU-related? I believe, as well, that at some point I switched from another AMD8xxx but didn’t notice a change in the lock-up/freeze issue before and after the switch.
Can anyone suggest whether some other GPU might provide more stability for the machine?
IMHO the issue isn’t so much your video card as bugs in Fx and apparently their willingness and/or available resources to address them.
For my particular video card, the chrome default is to disable acceleration and I don’t seem to have the same issues when running Chrome. Fx however, the default is to enable acceleration, and it obviously has issues, so I disabled it. That helped quite a bit but I still at times experience Fx unceremoniously crashing, then when I try to restart it I have to:
ps -e | grep firefox
kill fx processes
Sometimes, I have to repeat this several times to get Fx to successfully restart.
They really need to fix it, it is annoying. You shouldn’t have to shop for a video card to avoid a Fx bug. Unfortunately, the vast majority of people won’t take the time to report a bug, rather they’ll just switch over and use Chrome or one of the chrome-a-clone variants, which usually works.
It was happening so often on Chrome that I eventually switched over to Firefox, later fining that there was no change in the behavior. (Happy to go back to Firefox btw. I used it a lot years ago when the difference in performance b/t Chrome/Firefox seemed small. Then for awhile Firefox was unable to use multiple cores and many active tabs at once would kill one core. Chrome seemed much more stable w/multi-core at that time. Nowadays I don’t need “high performance” (many active tabs performing work simultaneously) so I’m back on FF and haven’t had the need to test performance.)
Before switching to FF, with this particular freezing issue I was usually able to quickly ALT+F4 to go into a new terminal session outside of Gnome. From there I could at least “gracefully” restart the machine. If I tried to jump back to the Gnome session from the terminal session (ALT+F2), then it would immediately freeze up the rest of the (no getting back to the terminal session). I tried killing all sorts of processes but nothing helped. I could kill and restart Gnome itself but I think then I was left with a session where the windows were missing borders and menu bars, windows oddly overlapped each other, black rectangles overlapping everywhere, can’t really use the mouse too effectively.
However, since switching to FF, I no longer can quickly ALT+F4 to another session. Keyboard input appears to be completely disabled (no ALT+F2 and “r” either). Usually the mouse will be responsive for awhile and music will keep playing if it’s going. But the interface is otherwise unresponsive. Sometimes it will go into a blank grey-screen or even completely turn off the monitors. At this point I usually restart the machine with the power switch.
Here is a fun one that I came back to last night after leaving the machine for a few hours with the audio playing in FF, although there wasn’t any mention of FF in the journalctl output :
Jan 27 20:21:14 localhost.localdomain kernel: list_del corruption. next->prev should be ffff9cc9119f1f38, but was ffff9cc9129f1f38. (next=ffff9cc8e181d038)
Jan 27 20:21:14 localhost.localdomain kernel: ------------[ cut here ]------------
Jan 27 20:21:14 localhost.localdomain kernel: kernel BUG at lib/list_debug.c:62!
Jan 27 20:21:14 localhost.localdomain kernel: invalid opcode: 0000 [#1] PREEMPT SMP NOPTI
Jan 27 20:21:14 localhost.localdomain kernel: CPU: 6 PID: 2814 Comm: gnome-she:rcs0 Not tainted 6.1.6-100.fc36.x86_64 #1
Jan 27 20:21:14 localhost.localdomain kernel: Hardware name: To be filled by O.E.M. To be filled by O.E.M./M5A97 LE R2.0, BIOS 1903 07/11/2013
Jan 27 20:21:14 localhost.localdomain kernel: RIP: 0010:__list_del_entry_valid.cold+0x23/0x6f
Jan 27 20:21:14 localhost.localdomain kernel: Code: e8 c0 8c fd ff 0f 0b 48 89 fe 48 c7 c7 60 56 76 b1 e8 af 8c fd ff 0f 0b 48 89 d1 48 c7 c7 80 57 76 b1 48 89 c2 e8 9b 8c fd ff <0f> 0b 48 89 f2 48 89 fe 48 c7 c7 30 57 76 b1 e8 87 8c fd ff 0f 0b
Jan 27 20:21:14 localhost.localdomain kernel: RSP: 0018:ffffc0f006c77a00 EFLAGS: 00010282
Jan 27 20:21:14 localhost.localdomain kernel: RAX: 000000000000006d RBX: ffff9cc9119f1f00 RCX: 0000000000000000
Jan 27 20:21:14 localhost.localdomain kernel: RDX: 0000000000000002 RSI: ffffffffb174a8a3 RDI: 00000000ffffffff
Jan 27 20:21:14 localhost.localdomain kernel: RBP: 0000000000000000 R08: 0000000000000000 R09: ffffc0f006c778b0
Jan 27 20:21:14 localhost.localdomain kernel: R10: 0000000000000003 R11: ffffffffb2146488 R12: ffff9cc50a418e30
Jan 27 20:21:14 localhost.localdomain kernel: R13: ffff9cc50a418e00 R14: ffff9cc9119f1f38 R15: 0000000000000000
Jan 27 20:21:14 localhost.localdomain kernel: FS: 00007ff44527b640(0000) GS:ffff9cca26d80000(0000) knlGS:0000000000000000
Jan 27 20:21:14 localhost.localdomain kernel: CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
Jan 27 20:21:14 localhost.localdomain kernel: CR2: 00007f566645c000 CR3: 0000000183bf2000 CR4: 00000000000406e0
Jan 27 20:21:14 localhost.localdomain kernel: Call Trace:
Jan 27 20:21:14 localhost.localdomain kernel:
Jan 27 20:21:14 localhost.localdomain kernel: ttm_resource_move_to_lru_tail+0xfe/0x1c0 [ttm]
Jan 27 20:21:14 localhost.localdomain kernel: ttm_eu_fence_buffer_objects+0x58/0x90 [ttm]
Jan 27 20:21:14 localhost.localdomain kernel: radeon_cs_parser_fini+0x148/0x150 [radeon]
Jan 27 20:21:14 localhost.localdomain kernel: radeon_cs_ioctl+0x2d3/0x780 [radeon]
Jan 27 20:21:14 localhost.localdomain kernel: ? radeon_cs_parser_init+0x4a0/0x4a0 [radeon]
Jan 27 20:21:14 localhost.localdomain kernel: drm_ioctl_kernel+0xa9/0x150
Jan 27 20:21:14 localhost.localdomain kernel: drm_ioctl+0x1e7/0x450
Jan 27 20:21:14 localhost.localdomain kernel: ? radeon_cs_parser_init+0x4a0/0x4a0 [radeon]
Jan 27 20:21:14 localhost.localdomain kernel: radeon_drm_ioctl+0x49/0x80 [radeon]
Jan 27 20:21:14 localhost.localdomain kernel: __x64_sys_ioctl+0x90/0xd0
Jan 27 20:21:14 localhost.localdomain kernel: do_syscall_64+0x5b/0x80
Jan 27 20:21:14 localhost.localdomain kernel: ? do_syscall_64+0x67/0x80
Jan 27 20:21:14 localhost.localdomain kernel: ? syscall_exit_to_user_mode_prepare+0x18e/0x1c0
Jan 27 20:21:14 localhost.localdomain kernel: ? syscall_exit_to_user_mode+0x17/0x40
Jan 27 20:21:14 localhost.localdomain kernel: ? do_syscall_64+0x67/0x80
Jan 27 20:21:14 localhost.localdomain kernel: ? exit_to_user_mode_prepare+0x18f/0x1f0
Jan 27 20:21:14 localhost.localdomain kernel: ? syscall_exit_to_user_mode+0x17/0x40
Jan 27 20:21:14 localhost.localdomain kernel: ? do_syscall_64+0x67/0x80
Jan 27 20:21:14 localhost.localdomain kernel: ? syscall_exit_to_user_mode+0x17/0x40
Jan 27 20:21:14 localhost.localdomain kernel: ? do_syscall_64+0x67/0x80
Jan 27 20:21:14 localhost.localdomain kernel: ? do_syscall_64+0x67/0x80
Jan 27 20:21:14 localhost.localdomain kernel: entry_SYSCALL_64_after_hwframe+0x63/0xcd
Jan 27 20:21:14 localhost.localdomain kernel: RIP: 0033:0x7ff44cb0748f
Jan 27 20:21:14 localhost.localdomain kernel: Code: 00 48 89 44 24 18 31 c0 48 8d 44 24 60 c7 04 24 10 00 00 00 48 89 44 24 08 48 8d 44 24 20 48 89 44 24 10 b8 10 00 00 00 0f 05 <89> c2 3d 00 f0 ff ff 77 18 48 8b 44 24 18 64 48 2b 04 25 28 00 00
Jan 27 20:21:14 localhost.localdomain kernel: RSP: 002b:00007ff445279d60 EFLAGS: 00000246 ORIG_RAX: 0000000000000010
Jan 27 20:21:14 localhost.localdomain kernel: RAX: ffffffffffffffda RBX: 000055c2f6105cd8 RCX: 00007ff44cb0748f
Jan 27 20:21:14 localhost.localdomain kernel: RDX: 000055c2f6115ce0 RSI: 00000000c0206466 RDI: 000000000000000d
Jan 27 20:21:14 localhost.localdomain kernel: RBP: 000055c2f6115ce0 R08: 0000000000000000 R09: 0000000000000001
Jan 27 20:21:14 localhost.localdomain kernel: R10: 0000000000000000 R11: 0000000000000246 R12: 00000000c0206466
Jan 27 20:21:14 localhost.localdomain kernel: R13: 000000000000000d R14: 000055c2f612de50 R15: 000055c2f602a878
Jan 27 20:21:14 localhost.localdomain kernel:
Jan 27 20:21:14 localhost.localdomain kernel: Modules linked in: tls snd_seq_dummy snd_hrtimer tun nft_objref nf_conntrack_netbios_ns nf_conntrack_broadcast nft_fib_inet nft_fib_ipv4 nft_fib_ipv6 nft_fib nft_reject_inet nf_reject_ipv4 nf_reject_ipv6 nft_reject nft_ct nft_chain_nat nf_tables ebtable_nat ebtable_broute ip6table_nat ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_mangle iptable_raw iptable_security ip_set nfnetlink ebtable_filter ebtables ip6table_filter iptable_filter it87 hwmon_vid binfmt_misc squashfs loop usblp edac_mce_amd uvcvideo videobuf2_vmalloc videobuf2_memops videobuf2_v4l2 videobuf2_common kvm_amd snd_hda_codec_realtek snd_hda_codec_generic snd_hda_codec_hdmi snd_usb_audio videodev ccp snd_hda_intel snd_usbmidi_lib snd_intel_dspcfg snd_rawmidi joydev kvm snd_intel_sdw_acpi eeepc_wmi mc snd_hda_codec irqbypass asus_wmi ledtrig_audio sparse_keymap snd_hda_core platform_profile rfkill snd_hwdep wmi_bmof pcspkr mxm_wmi snd_seq
Jan 27 20:21:14 localhost.localdomain kernel: fam15h_power k10temp snd_seq_device snd_pcm snd_timer snd soundcore i2c_piix4 acpi_cpufreq zram amdgpu iommu_v2 gpu_sched drm_buddy radeon crct10dif_pclmul crc32_pclmul crc32c_intel polyval_clmulni polyval_generic video hid_cmedia ghash_clmulni_intel drm_ttm_helper ttm sha512_ssse3 drm_display_helper firewire_ohci cec firewire_core crc_itu_t sp5100_tco r8169 wmi ip6_tables ip_tables fuse
Jan 27 20:21:14 localhost.localdomain kernel: —[ end trace 0000000000000000 ]—
This output goes on for another ~3000 or so lines until I finally came back to shut off (power switch) the machine a few hours later. (Nice to see the motherboard’s model thrown in there for good measure (“M5A97 LE R2.0”))
If you are looking for GPU suggestions, I would like to say that with Intel XE integrated from the latest Intel (using an i7 gen11 now) I never had an issue since Linux 5.10 kernel. Intel XE is present from i5+ gen 11, laptop and desktop CPUs, and also some dedicated cards.
Firefox uses full hardware acceleration, including video hardware decoding.
My older laptop with an i3 gen 11 which has the Intel 620 GPU does full hardware acceleration and works really nice, and stable, but recent video hardware decoding simply stopped working, probably fixable.
On the other side, I have also a slightly older i5 coupled with an AMD RX560 and every few days I even have to hard reboot the desktop. Most errors are because of the GPU. And video hardware decoding is working from time to time.
I used Archlinux’s wiki to tweak and get at some point Firefox to play nice with the RX560 card, including video hardware decoding, but with almost every update, firefox wasn’t starting and had to reset its config. If you follow up with it, pay attention to the mention that Firefox will not work with VA-API on translation from VDPAU, but only if it is directly supported by the mesa driver for vaapi, meaning your card must be supported by radeonsi and make AMDGPU driver use it. I think mine breaks as it loads the new amdgpu one. I considered in the end too complex and gave up planning an upgrade to a recent Intel CPU for the desktop.
With my experience with the AMD GPU, I personally won’t recommend it to anyone.
Turning off acceleration in FF has reduced how many times FF has caused the issue, although the issue itself still persists.
Turning off the screensaver has also seemed to reduce the number of times the issue occurs, although again the issue is still persisting.
Just wondering whether if perhaps this (crash/freeze) issue with long-running services, then could a cron script to restart said long-running services possibly be a way to reduce the issue? For example, restarting certain services once an hour or so? For example, I wouldn’t mind Gnome resetting itself, even if I had to re-login, as long as all the running windows are kept intact.
Your CPU is recent, 2011 and GPU is listed in Ubuntu certified components … why change? Chrome is based on Chromium open source web browser, all bells and whistles with Blink. Maybe the issue is simply related to hardware settings in BIOS … explore …