For I while I’ve been struggling with a sporadic freeze on resume. I’ve pursued quite a few suspicions, too many to list here and still have these freezes from time to time.
My current suspicion is that upon resume fangfrisch.service gets sometimes triggered from fangfrisch.timer, but maybe at a time when none of the severs can be reached. And that sometimes might happen when the filesystem is not yet ready to log the tons of errors that get spewed into the log.
I know this sounds far-fetched, but that’s just because I’ve already looked at so many other more plausible explanations.
I could, of course, disable fangfrisch.timer and see if it still happens, but since it’s sporadic, I was hoping for a better idea.
The output of this command will help others to see factors that might be contributing.
[]$ pamac search fangfrisch --aur
python-fangfrisch 1.9.0-4
Freshclam like utility that allows downloading unofficial virus definition files
A reminder that packages installed from the AUR remain technically unsupported on Manjaro (or Arch).
A possibility is that a scheduled virus definition update is missed while in a hibernation state, and upon resume is automatically triggered.
This might be consistent with the freeze you describe.
Some perhaps poorly written scripts could for example force maximum bandwidth, thereby limiting availability of resources for other tasks; the result of which might be observed as a temporary freeze; though this might only last as long as the definition update.
This is only speculation.
Antivirus is (arguably) not of great importance in Linux when firewalls and other security measures are in place.
That said, if you feel you must use Antivirus in Manjaro, I might suggest using one of the commercial alternatives designed for Linux, with a guaranteed support path.
As @soundofthunder said; more system info please. For example, do you have any swap defined? (Essential for hibernate, for example). We don’t currently know this.
As a starting point, after posting the already-requested info, we might be able to help further with the results of: cat /etc/default/grub
and cat /etc/fstab
GRUB_DEFAULT=0
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR='Manjaro'
GRUB_CMDLINE_LINUX_DEFAULT="quiet efi=runtime nvme_core.default_ps_max_latency_us=0"
GRUB_CMDLINE_LINUX=""
# If you want to enable the save default function, uncomment the following
# line, and set GRUB_DEFAULT to saved.
GRUB_SAVEDEFAULT=false
# Preload both GPT and MBR modules so that they are not missed
GRUB_PRELOAD_MODULES="part_gpt part_msdos"
# Uncomment to enable Hidden Menu, and optionally hide the timeout count
#GRUB_HIDDEN_TIMEOUT=5
#GRUB_HIDDEN_TIMEOUT_QUIET=true
# Uncomment to use basic console
GRUB_TERMINAL_INPUT=console
# Uncomment to disable graphical terminal
#GRUB_TERMINAL_OUTPUT=console
# The resolution used on graphical terminal
# note that you can use only modes which your graphic card supports via VBE
# you can see them in real GRUB with the command `vbeinfo'
GRUB_GFXMODE=auto
# Uncomment to allow the kernel use the same resolution used by grub
GRUB_GFXPAYLOAD_LINUX=keep
# Uncomment if you want GRUB to pass to the Linux kernel the old parameter
# format "root=/dev/xxx" instead of "root=/dev/disk/by-uuid/xxx"
#GRUB_DISABLE_LINUX_UUID=true
# Uncomment to disable generation of recovery mode menu entries
GRUB_DISABLE_RECOVERY=true
# Uncomment and set to the desired menu colors. Used by normal and wallpaper
# modes only. Entries specified as foreground/background.
GRUB_COLOR_NORMAL="light-gray/black"
GRUB_COLOR_HIGHLIGHT="green/black"
# Uncomment one of them for the gfx desired, a image background or a gfxtheme
GRUB_BACKGROUND="/usr/share/grub/background.png"
#GRUB_THEME="/path/to/gfxtheme"
# Uncomment to get a beep at GRUB start
#GRUB_INIT_TUNE="480 440 1"
# Uncomment this option to enable os-prober execution in the grub-mkconfig command
GRUB_DISABLE_OS_PROBER=false
# /etc/fstab: static file system information.
#
# Use 'blkid' to print the universally unique identifier for a device; this may
# be used with UUID= as a more robust way to name devices that works even if
# disks are added and removed. See fstab(5).
#
# <file system> <mount point> <type> <options> <dump> <pass>
UUID=D942-2969 /boot/efi vfat defaults,discard,noatime 0 2
UUID=477c07a4-431c-49c7-90ee-31aa9350aa89 / btrfs subvol=@,defaults,discard,noatime,space_cache=v2,autodefrag 0 1
UUID=477c07a4-431c-49c7-90ee-31aa9350aa89 /home btrfs subvol=@home,defaults,discard,noatime,space_cache=v2,autodefrag 0 2
UUID=477c07a4-431c-49c7-90ee-31aa9350aa89 /home/marko/myStuff btrfs subvol=@myStuff,defaults,discard,noatime,space_cache=v2,autodefrag 0 2
UUID=477c07a4-431c-49c7-90ee-31aa9350aa89 /mnt/forBackup btrfs defaults,discard,noatime,space_cache=v2,autodefrag 0 2
UUID=477c07a4-431c-49c7-90ee-31aa9350aa89 /swap btrfs subvol=@swap 0 0
/swap/swapfile none swap sw 0 0
In journalctl -b -1 with a good suspend/resume I get many lines that are missing from the unsuccessful resume.
Nov 04 16:12:11 allofthis kernel: PM: suspend entry (deep)
Nov 04 16:12:15 allofthis kernel: Filesystems sync: 3.674 seconds
Nov 04 16:12:15 allofthis kernel: Freezing user space processes
Nov 05 07:34:47 allofthis kernel: Freezing user space processes completed (elapsed 0.002 seconds)
Nov 05 07:34:47 allofthis kernel: OOM killer disabled.
Nov 05 07:34:47 allofthis kernel: Freezing remaining freezable tasks
Nov 05 07:34:47 allofthis kernel: Freezing remaining freezable tasks completed (elapsed 0.002 seconds)
Nov 05 07:34:47 allofthis kernel: printk: Suspending console(s) (use no_console_suspend to debug)
Nov 05 07:34:47 allofthis kernel: e1000e: EEE TX LPI TIMER: 00000011
Nov 05 07:34:47 allofthis kernel: ACPI: EC: interrupt blocked
Nov 05 07:34:47 allofthis kernel: ACPI: PM: Preparing to enter system sleep state S3
Nov 05 07:34:47 allofthis kernel: ACPI: EC: event blocked
Nov 05 07:34:47 allofthis kernel: ACPI: EC: EC stopped
Nov 05 07:34:47 allofthis kernel: ACPI: PM: Saving platform NVS memory
Nov 05 07:34:47 allofthis kernel: Disabling non-boot CPUs ...
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 1 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 2 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 3 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 4 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 5 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 6 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 7 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 8 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 9 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 10 is now offline
Nov 05 07:34:47 allofthis kernel: smpboot: CPU 11 is now offline
Nov 05 07:34:47 allofthis kernel: ACPI: PM: Low-level resume complete
Nov 05 07:34:47 allofthis kernel: ACPI: EC: EC started
Nov 05 07:34:47 allofthis kernel: ACPI: PM: Restoring platform NVS memory
Nov 05 07:34:47 allofthis kernel: Enabling non-boot CPUs ...
with unsuccessful resume I only have the Nov 04 16:12:11 allofthis kernel: PM: suspend entry (deep) type of entry as the last entry in the journal.
I have never seen efi=runtime before - interesting …
but:
you don’t have any resume file or partition defined
on hibernation, RAM is written to swap and later restored from it
With ext4 this doesn’t work automatically.
I don’t think this is too different with BTRFS - but I don’t know.