Bug 1222674 - BTRFS Snapshots failing since kernel 6.8.4rc1, still working on 6.8.2
Summary: BTRFS Snapshots failing since kernel 6.8.4rc1, still working on 6.8.2
Status: RESOLVED FEATURE
Alias: None
Product: openSUSE Tumbleweed
Classification: openSUSE
Component: Kernel (show other bugs)
Version: Current
Hardware: Other Other
: P5 - None : Normal (vote)
Target Milestone: ---
Assignee: openSUSE Kernel Bugs
QA Contact: E-mail List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-04-11 10:08 UTC by pallas wept
Modified: 2024-04-15 07:33 UTC (History)
2 users (show)

See Also:
Found By: ---
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description pallas wept 2024-04-11 10:08:31 UTC
I just noticed I don't have a single snapshot from the last 3 days (they normally are taken hourly). Looking at "what changed?" I notice that's when I updated my kernel, and it's the only change I can see that would be relevant. 

I rebooted, and selected the old kernel from GRUB, and snapshots work fine. Reboot into 6.8.4 again, can't snapshot.

More detail: Manual snapshots will work, but not if given a cleanup schedule, ie:
sudo snapper create #works
sudo snapper create -c timeline #fails
Accordingly, it's unsurprising that scheduled snapshots with snapper fail with the same error as the manual snapshot, since it creates snapshots with the cleanup set.

The logs show the following errors:

>2024-04-11 19:28:52 MIL libsnapper(12199) Snapshot.cc(read):344 - found 95 snapshots
>2024-04-11 19:28:52 WAR libsnapper(12199) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/9878 errno:2 (No such file or directory)
>2024-04-11 19:28:52 WAR libsnapper(12199) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/9878 errno:2 (No such file or directory)
>2024-04-11 19:28:52 ERR libsnapper(12199) Btrfs.cc(createSnapshot):328 - create snapshot failed, btrfs_util_create_snapshot_fd2() failed, errno:2 (No such file or directory)
>2024-04-11 19:28:52 WAR libsnapper(12199) Btrfs.cc(createSnapshot):329 - THROW: create snapshot failed
>2024-04-11 19:28:52 WAR libsnapper(12199) Snapshot.cc(createHelper):780 - CAUGHT: create snapshot failed
>2024-04-11 19:28:52 WAR libsnapper(12199) Snapshot.cc(createHelper):785 - RETHROW: create snapshot failed
>2024-04-11 19:28:52 WAR libsnapper(12199) Client.cc(dispatch):1983 - CAUGHT: create snapshot failed

In this example, the last snapshot already existing was 9877, and it would have been creating 9878, but the directory does not exist before or after the command.

If I create a manual snapshot with no cleanup set, or reboot into kernel 6.8.2, the snapshot will work, and become 9878.

The failure of the snapshot causes the snapper-timeline.service to exit, also. It does not provide any information in its logs.

Please let me know if there's anything I can do to help.
Comment 1 pallas wept 2024-04-11 10:16:49 UTC
BTW, I am able to assign a cleanup algorithm to manually created snapshots, after they are created - so that part seems to still be working, in spite of it being part of the trigger. Hope that helps?
Comment 2 pallas wept 2024-04-12 03:06:07 UTC
Also filed here: https://github.com/openSUSE/snapper/issues/894
Comment 3 Ingo Göppert 2024-04-12 09:50:05 UTC
Same on my system. snapperd does not create automatic snapshots when installiing software via YaST/zypper:
> 2024-04-12 11:45:13 MIL libsnapper(26360) snapperd.cc(main):283 - Requesting DBus name
> 2024-04-12 11:45:13 MIL libsnapper(26360) snapperd.cc(main):298 - Loading snapper configs
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(getConfigs):355 - Snapper get-configs
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(getConfigs):356 - libsnapper version 0.10.7
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(reload):922 - loading file /etc/sysconfig/snapper
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:SNAPPER_CONFIGS value:root
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
> 2024-04-12 11:45:13 MIL libsnapper(26360) snapperd.cc(main):311 - Listening for method calls and signals
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(Snapper):97 - Snapper constructor
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(Snapper):98 - snapper version 0.10.7
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(Snapper):99 - libsnapper version 7.4.0
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(Snapper):100 - config_name:root root_prefix:/ disable_filters:false
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:FSTYPE value:btrfs
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:QGROUP value:1/0
> 2024-04-12 11:45:13 MIL libsnapper(26360) Selinux.cc(_is_selinux_enabled):141 - SELinux support disabled
> 2024-04-12 11:45:13 MIL libsnapper(26360) AsciiFile.cc(get_value):1078 - key:SYNC_ACL value:no
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(Snapper):130 - subvolume:/ filesystem:btrfs
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapper.cc(loadIgnorePatterns):204 - number of ignore patterns:8
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2941
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2942
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2951
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2952
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2953
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2954
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2961
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2962
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2963
> 2024-04-12 11:45:13 ERR libsnapper(26360) Snapshot.cc(read):326 - snapshot check failed. not adding snapshot 2964
> 2024-04-12 11:45:13 MIL libsnapper(26360) Snapshot.cc(read):344 - found 19 snapshots
> 2024-04-12 11:45:13 WAR libsnapper(26360) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/3740 errno:2 (No such file or directory)
> 2024-04-12 11:45:13 WAR libsnapper(26360) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/3740 errno:2 (No such file or directory)
> 2024-04-12 11:45:13 ERR libsnapper(26360) Btrfs.cc(createSnapshot):328 - create snapshot failed, btrfs_util_create_snapshot_fd2() failed, errno:2 (No such file or directory)
> 2024-04-12 11:45:13 WAR libsnapper(26360) Btrfs.cc(createSnapshot):329 - THROW: create snapshot failed
> 2024-04-12 11:45:13 WAR libsnapper(26360) Snapshot.cc(createHelper):780 - CAUGHT: create snapshot failed
> 2024-04-12 11:45:13 WAR libsnapper(26360) Snapshot.cc(createHelper):785 - RETHROW: create snapshot failed
> 2024-04-12 11:45:13 WAR libsnapper(26360) Client.cc(dispatch):1983 - CAUGHT: create snapshot failed
> 2024-04-12 11:45:43 MIL libsnapper(26360) Snapper.cc(~Snapper):142 - Snapper destructor
> 2024-04-12 11:46:13 MIL libsnapper(26360) snapperd.cc(main):315 - Exiting
Comment 4 pallas wept 2024-04-12 14:51:14 UTC
Sorry to hear it, Ingo.

FWIW, I don't get the snapshot check errors. This is from one of my failing hourly snapshots:

>  2024-04-12 22:00:00 MIL libsnapper(28132) snapperd.cc(main):283 - Requesting DBus name
>  2024-04-12 22:00:00 MIL libsnapper(28132) snapperd.cc(main):298 - Loading snapper configs
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(getConfigs):355 - Snapper get-configs
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(getConfigs):356 - libsnapper version 0.10.7
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(reload):922 - loading file /etc/sysconfig/snapper
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SNAPPER_CONFIGS value:root home
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/home
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/home
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
>  2024-04-12 22:00:00 MIL libsnapper(28132) snapperd.cc(main):311 - Listening for method calls and signals
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):97 - Snapper constructor
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):98 - snapper version 0.10.7
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):99 - libsnapper version 7.4.0
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):100 - config_name:home root_prefix:/ disable_filters:false
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/home
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/home
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:FSTYPE value:btrfs
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:QGROUP value:
>  2024-04-12 22:00:00 MIL libsnapper(28132) Selinux.cc(_is_selinux_enabled):141 - SELinux support disabled
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SYNC_ACL value:no
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):130 - subvolume:/home filesystem:btrfs
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(loadIgnorePatterns):204 - number of ignore patterns:8
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapshot.cc(read):344 - found 25 snapshots
>  2024-04-12 22:00:00 WAR libsnapper(28132) FileUtils.cc(SDir):88 - THROW: open failed path:/home/.snapshots/8185 errno:2 (No such file or directory)
>  2024-04-12 22:00:00 WAR libsnapper(28132) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path:/home/.snapshots/8185 errno:2 (No such file or directory)
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):97 - Snapper constructor
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):98 - snapper version 0.10.7
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):99 - libsnapper version 7.4.0
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):100 - config_name:root root_prefix:/ disable_filters:false
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:FSTYPE value:btrfs
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:QGROUP value:1/0
>  2024-04-12 22:00:00 MIL libsnapper(28132) AsciiFile.cc(get_value):1078 - key:SYNC_ACL value:no
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(Snapper):130 - subvolume:/ filesystem:btrfs
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapper.cc(loadIgnorePatterns):204 - number of ignore patterns:8
>  2024-04-12 22:00:00 MIL libsnapper(28132) Snapshot.cc(read):344 - found 90 snapshots
>  2024-04-12 22:00:00 WAR libsnapper(28132) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/9891 errno:2 (No such file or directory)
>  2024-04-12 22:00:00 WAR libsnapper(28132) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/9891 errno:2 (No such file or directory)
>  2024-04-12 22:00:00 ERR libsnapper(28132) Btrfs.cc(createSnapshot):328 - create snapshot failed, btrfs_util_create_snapshot_fd2() failed, errno:2 (No such file or directory)
>  2024-04-12 22:00:00 WAR libsnapper(28132) Btrfs.cc(createSnapshot):329 - THROW: create snapshot failed
>  2024-04-12 22:00:00 WAR libsnapper(28132) Snapshot.cc(createHelper):780 - CAUGHT: create snapshot failed
>  2024-04-12 22:00:00 WAR libsnapper(28132) Snapshot.cc(createHelper):785 - RETHROW: create snapshot failed
>  2024-04-12 22:00:00 WAR libsnapper(28132) Client.cc(dispatch):1983 - CAUGHT: create snapshot failed
>  2024-04-12 22:00:00 WAR libsnapper(28130) DBusConnection.cc(send_with_reply_and_block):104 - THROW: dbus error exception
>  2024-04-12 22:00:30 MIL libsnapper(28132) Snapper.cc(~Snapper):142 - Snapper destructor
>  2024-04-12 22:00:30 MIL libsnapper(28132) Snapper.cc(~Snapper):142 - Snapper destructor
>  2024-04-12 22:01:00 MIL libsnapper(28132) snapperd.cc(main):315 - Exiting
Comment 5 Arvin Schnell 2024-04-12 16:41:43 UTC
The logs show that btrfs_util_create_snapshot_fd2() fails with errno =
2 (No such file or directory). That is very strange since the function
gets two file descriptors and one path. The path is constant ("snapshot")
and is created - so should never exist beforehand. If one of the file
descriptors is wrong I would expect a different errno.

Maybe the errno of 2 is a leftover of a previous ioctl. Can someone
who can reproduce the problem compile snapper and place an 'errno = 0;'
before the btrfs_util_create_snapshot_fd2 in BtrfsUtils.cc?

Also, are there any error messages in dmesg or journalctl?
Comment 6 pallas wept 2024-04-12 17:26:24 UTC
(In reply to Arvin Schnell from comment #5)
> Also, are there any error messages in dmesg or journalctl?

dmesg is silent on this, journalctl is largely uninteresting, it just lets me know the timeline service failed:

>Apr 13 02:00:00 Pallas CRON[21411]: (root) CMD (run-parts /etc/cron.hourly)
>Apr 13 02:00:00 Pallas CRON[21410]: (root) CMDEND (run-parts /etc/cron.hourly)
>Apr 13 02:00:00 Pallas systemd[1]: Started Timeline of Snapper Snapshots.
>Apr 13 02:00:00 Pallas dbus-daemon[8554]: [system] Activating via systemd: service name='org.opensuse.Snapper' unit='snapperd.service' requested by ':1.229' (uid=0 pid=21412 comm="/usr/lib/snapper/systemd-helper --timeline")
>Apr 13 02:00:00 Pallas systemd[1]: Starting DBus interface for snapper...
>Apr 13 02:00:00 Pallas dbus-daemon[8554]: [system] Successfully activated service 'org.opensuse.Snapper'
>Apr 13 02:00:00 Pallas systemd[1]: Started DBus interface for snapper.
>Apr 13 02:00:00 Pallas systemd-helper[21412]: running timeline for 'home'.
>Apr 13 02:00:00 Pallas systemd-helper[21412]: running timeline for 'root'.
>Apr 13 02:00:00 Pallas systemd-helper[21412]: Creating snapshot failed.
>Apr 13 02:00:00 Pallas systemd-helper[21412]: timeline for 'root' failed.
>Apr 13 02:00:00 Pallas systemd[1]: snapper-timeline.service: Main process exited, code=exited, status=1/FAILURE
>Apr 13 02:00:00 Pallas systemd[1]: snapper-timeline.service: Failed with result 'exit-code'.
>Apr 13 02:01:00 Pallas systemd[1]: snapperd.service: Deactivated successfully.

I'll branch snapper in the morning and let you know what it says.

Thanks for the insight :)
Comment 7 pallas wept 2024-04-13 01:29:28 UTC
(In reply to Arvin Schnell from comment #5)
> compile snapper and place an 'errno = 0;' before the btrfs_util_create_snapshot_fd2 in BtrfsUtils.cc?

TL;DR No change.

Arvin, I made you a maintainer of https://build.opensuse.org/package/show/home:pallaswept:branches:boo1222674/snapper if you want to experiment. It just has a single patch file with that one line you asked for.

Perhaps of interest: Even successful snapshots generate a (slightly different) error 2.

I booted with the modified snapper, tried to snapshot with number cleanup, got the same error, then timeline, then no cleanup (which succeeded).

When I checked the logs I saw three sets of errors in spite of only two failures. I ran the third command again, to verify. Logs:


> 2024-04-13 11:12:16 MIL libsnapper(12132) snapperd.cc(main):283 - Requesting DBus name
> 2024-04-13 11:12:16 MIL libsnapper(12132) snapperd.cc(main):298 - Loading snapper configs
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(getConfigs):355 - Snapper get-configs
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(getConfigs):356 - libsnapper version 0.10.7
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(reload):922 - loading file /etc/sysconfig/snapper
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:SNAPPER_CONFIGS value:root home
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/home
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/home
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
> 2024-04-13 11:12:16 MIL libsnapper(12132) snapperd.cc(main):311 - Listening for method calls and signals
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(Snapper):97 - Snapper constructor
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(Snapper):98 - snapper version 0.10.7
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(Snapper):99 - libsnapper version 7.4.0
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(Snapper):100 - config_name:root root_prefix:/ disable_filters:false
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:FSTYPE value:btrfs
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:QGROUP value:1/0
> 2024-04-13 11:12:16 MIL libsnapper(12132) Selinux.cc(_is_selinux_enabled):141 - SELinux support disabled
> 2024-04-13 11:12:16 MIL libsnapper(12132) AsciiFile.cc(get_value):1078 - key:SYNC_ACL value:no
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(Snapper):130 - subvolume:/ filesystem:btrfs
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapper.cc(loadIgnorePatterns):204 - number of ignore patterns:8
> 2024-04-13 11:12:16 MIL libsnapper(12132) Snapshot.cc(read):344 - found 101 snapshots
> 2024-04-13 11:12:16 WAR libsnapper(12132) Snapper.cc(calculateUsedSpace):928 - THROW: quota rescan or sync failed
> 2024-04-13 11:12:16 WAR libsnapper(12132) Client.cc(dispatch):2049 - CAUGHT: quota rescan or sync failed
> 2024-04-13 11:12:31 WAR libsnapper(12132) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/9902 errno:2 (No such file or directory)
> 2024-04-13 11:12:31 WAR libsnapper(12132) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/9902 errno:2 (No such file or directory)
> 2024-04-13 11:12:31 ERR libsnapper(12132) Btrfs.cc(createSnapshot):328 - create snapshot failed, btrfs_util_create_snapshot_fd2() failed, errno:2 (No such file or directory)
> 2024-04-13 11:12:31 WAR libsnapper(12132) Btrfs.cc(createSnapshot):329 - THROW: create snapshot failed
> 2024-04-13 11:12:31 WAR libsnapper(12132) Snapshot.cc(createHelper):780 - CAUGHT: create snapshot failed
> 2024-04-13 11:12:31 WAR libsnapper(12132) Snapshot.cc(createHelper):785 - RETHROW: create snapshot failed
> 2024-04-13 11:12:31 WAR libsnapper(12132) Client.cc(dispatch):1983 - CAUGHT: create snapshot failed
> 2024-04-13 11:12:38 WAR libsnapper(12132) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/9902 errno:2 (No such file or directory)
> 2024-04-13 11:12:38 WAR libsnapper(12132) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/9902 errno:2 (No such file or directory)
> 2024-04-13 11:12:38 ERR libsnapper(12132) Btrfs.cc(createSnapshot):328 - create snapshot failed, btrfs_util_create_snapshot_fd2() failed, errno:2 (No such file or directory)
> 2024-04-13 11:12:38 WAR libsnapper(12132) Btrfs.cc(createSnapshot):329 - THROW: create snapshot failed
> 2024-04-13 11:12:38 WAR libsnapper(12132) Snapshot.cc(createHelper):780 - CAUGHT: create snapshot failed
> 2024-04-13 11:12:38 WAR libsnapper(12132) Snapshot.cc(createHelper):785 - RETHROW: create snapshot failed
> 2024-04-13 11:12:38 WAR libsnapper(12132) Client.cc(dispatch):1983 - CAUGHT: create snapshot failed
> 2024-04-13 11:12:42 WAR libsnapper(12132) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/9902 errno:2 (No such file or directory)
> 2024-04-13 11:12:42 WAR libsnapper(12132) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/9902 errno:2 (No such file or directory)
> 2024-04-13 11:12:42 MIL libsnapper(12132) SystemCmd.cc(SystemCmd):48 - constructor SystemCmd: /usr/lib/snapper/plugins/grub --refresh
> 2024-04-13 11:12:43 MIL libsnapper(12132) SystemCmd.cc(execute):180 - stopwatch 1.568772s for "/usr/lib/snapper/plugins/grub --refresh"
> 2024-04-13 11:12:43 MIL libsnapper(12132) SystemCmd.cc(execute):194 - system() Returns:0
> 2024-04-13 11:13:13 MIL libsnapper(12132) Snapper.cc(~Snapper):142 - Snapper destructor
> 2024-04-13 11:13:43 MIL libsnapper(12132) snapperd.cc(main):315 - Exiting
> 2024-04-13 11:15:00 MIL libsnapper(15146) snapperd.cc(main):283 - Requesting DBus name
> 2024-04-13 11:15:00 MIL libsnapper(15146) snapperd.cc(main):298 - Loading snapper configs
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(getConfigs):355 - Snapper get-configs
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(getConfigs):356 - libsnapper version 0.10.7
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(reload):922 - loading file /etc/sysconfig/snapper
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:SNAPPER_CONFIGS value:root home
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/home
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/home
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:ALLOW_USERS value:
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:ALLOW_GROUPS value:
> 2024-04-13 11:15:00 MIL libsnapper(15146) snapperd.cc(main):311 - Listening for method calls and signals
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(Snapper):97 - Snapper constructor
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(Snapper):98 - snapper version 0.10.7
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(Snapper):99 - libsnapper version 7.4.0
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(Snapper):100 - config_name:root root_prefix:/ disable_filters:false
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(reload):922 - loading file /etc/snapper/configs/root
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:SUBVOLUME value:/
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:FSTYPE value:btrfs
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:QGROUP value:1/0
> 2024-04-13 11:15:00 MIL libsnapper(15146) Selinux.cc(_is_selinux_enabled):141 - SELinux support disabled
> 2024-04-13 11:15:00 MIL libsnapper(15146) AsciiFile.cc(get_value):1078 - key:SYNC_ACL value:no
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(Snapper):130 - subvolume:/ filesystem:btrfs
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapper.cc(loadIgnorePatterns):204 - number of ignore patterns:8
> 2024-04-13 11:15:00 MIL libsnapper(15146) Snapshot.cc(read):344 - found 102 snapshots
> 2024-04-13 11:15:00 WAR libsnapper(15146) FileUtils.cc(SDir):88 - THROW: open failed path://.snapshots/9903 errno:2 (No such file or directory)
> 2024-04-13 11:15:00 WAR libsnapper(15146) Btrfs.cc(checkSnapshot):490 - CAUGHT: open failed path://.snapshots/9903 errno:2 (No such file or directory)
> 2024-04-13 11:15:00 MIL libsnapper(15146) SystemCmd.cc(SystemCmd):48 - constructor SystemCmd: /usr/lib/snapper/plugins/grub --refresh
> 2024-04-13 11:15:02 MIL libsnapper(15146) SystemCmd.cc(execute):180 - stopwatch 1.518764s for "/usr/lib/snapper/plugins/grub --refresh"
> 2024-04-13 11:15:02 MIL libsnapper(15146) SystemCmd.cc(execute):194 - system() Returns:0
Comment 8 pallas wept 2024-04-15 02:35:56 UTC
See here for a possible workaround/solution to this issue:
https://github.com/openSUSE/snapper/issues/894#issuecomment-2054220427

TL;DR make sure to disable qgroups in snapper config(s) as well as BTRFS.

Credit to arnavion for figuring this out.
Comment 9 Ingo Göppert 2024-04-15 07:16:21 UTC
The workaround works for me ;-)

qgroups are not enabled on the system where snapshots are failing. On a system installed some months before qgroups are enabled. Looks like the default settings have been modified in the year 2020.
Comment 10 Ingo Göppert 2024-04-15 07:17:33 UTC
(In reply to Ingo Göppert from comment #9)
> The workaround works for me ;-)
> 
> qgroups are not enabled on the system where snapshots are failing. On a
> system installed some months before qgroups are enabled. Looks like the
> default settings have been modified in the year 2020.

I mean quotas enabled/disabled...
Comment 11 pallas wept 2024-04-15 07:33:53 UTC
(In reply to Ingo Göppert from comment #9)
> The workaround works for me ;-)

Great news!

I feel like I should resolve+close this now, because the change to the kernel which triggered this, is intentional, so any change would be made against snapper, and I already have that issue on snapper's github, so their team could track this from there.

If you would like me to re-open this just let me know :) (although I imagine you have the power to re-open it yourself?)

Thanks everyone! I got so accustomed to the added layer of security that snapper provides, that I felt rather uncomfortable without it... It's nice to have my snapshots back :)