I started the update and left the computer unattended, so I do not know what happened. The end result is that I have packages from both 40 and 41. Kernel is still at 40, /etc/redhat-release says 41 and dnf still looks at Fedora 40 repo.
$ sudo dnf system-upgrade download --releasever=41
Updating and loading repositories:
Repositories loaded.
Failed to resolve the transaction:
Problem: The operation would result in removing the following protected packages: grub2-pc, grub2-tools-minimal, selinux-policy-targeted, sudo, systemd, systemd-udev
It would appear something happened that the upgrade did not fully complete. Sometimes this happens, cause not fully defined, and recovery is usually relatively simple.
I would suggest that you run dnf distro-sync --releasever=41 --allowerasing and see what changes it will make before proceeding. In most cases this is perfectly acceptable and completes the upgrade properly.
$ sudo dnf distro-sync --releasever=41 --allowerasing
Updating and loading repositories:
Repositories loaded.
Failed to resolve the transaction:
Problem: The operation would result in removing the following protected packages: grub2-pc, grub2-tools-minimal, selinux-policy-targeted, sudo, systemd, systemd-udev
You can try to add to command line:
–skip-broken to skip uninstallable packages