Your message dated Wed, 14 Jun 2023 14:15:58 +0200
with message-id <14d87cc3-8018-5e3e-d7ed-366c56682...@debian.org>
and subject line Re: systemd-boot: bootctl install/update completely broken 
with /boot on ZFS
has caused the Debian Bug report #1032355,
regarding systemd-boot: bootctl install/update completely broken with /boot on 
ZFS
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact ow...@bugs.debian.org
immediately.)


-- 
1032355: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1032355
Debian Bug Tracking System
Contact ow...@bugs.debian.org with problems
--- Begin Message ---
Package: systemd-boot
Version: 252.6-1
Severity: important
Tags: patch upstream
Control: forwarded -1 https://github.com/systemd/systemd/pull/26660

Dear Maintainer,

I already forwarded this upstream, but I found this in Debian and I have
a patch that works for 252.6-1, so I'm hoping this can land for
bookworm.

In short, when updating sd-boot:
dpkg: error processing package systemd-boot (--configure):
 installed systemd-boot package post-installation script subprocess
 returned error exit status 1

And indeed:
❯ sudo bootctl update --graceful
❯ echo $?
1

With no more information. This is because statx(/boot) (when that's on
ZFS) returns stx_dev_major=0, which forces a "this filesystem is btrfs"
path, which errors out and silently exits 1 when it's actually not.

-- >8 --
$ git diff
diff --git a/src/shared/find-esp.c b/src/shared/find-esp.c
index fa234c8b5f..1af643da5e 100644
--- a/src/shared/find-esp.c
+++ b/src/shared/find-esp.c
@@ -814,7 +814,7 @@ int find_xbootldr_and_warn(
         r = verify_xbootldr(p, /* searching= */ true, unprivileged_mode, 
ret_uuid, ret_devid);
         if (r >= 0)
                 goto found;
-        if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL, -ENOTDIR)) /* This one is not 
it */
+        if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL, -ENOTDIR, -ENOTTY)) /* This 
one is not it */
                 return r;
 
         return -ENOKEY;
-- >8 --

This patch, effectively, understands that -ENOTTY means "this is not an
XBOOTLDR partition" and lets the installation progress normally.

Please consider applying this.

наб

-- System Information:
Debian Release: 11.6
  APT prefers stable-updates
  APT policy: (500, 'stable-updates'), (500, 'stable-security'), (500, 
'stable-debug'), (500, 'stable')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 5.10.0-20-amd64 (SMP w/24 CPU threads)
Kernel taint flags: TAINT_PROPRIETARY_MODULE, TAINT_FIRMWARE_WORKAROUND, 
TAINT_OOT_MODULE, TAINT_UNSIGNED_MODULE
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8), 
LANGUAGE=en_GB:en
Shell: /bin/sh linked to /usr/bin/dash
Init: systemd (via /run/systemd/system)
LSM: AppArmor: enabled

Versions of packages systemd-boot depends on:
ii  libc6              2.31-13+deb11u5
pn  libsystemd-shared  <none>
pn  systemd-boot-efi   <none>

Versions of packages systemd-boot recommends:
ii  efibootmgr  17-1

systemd-boot suggests no packages.

Attachment: signature.asc
Description: PGP signature


--- End Message ---
--- Begin Message ---
Version: 252.11-1

On Sat, 4 Mar 2023 17:33:37 +0100 =?utf-8?B?0L3QsNCx?= <nabijaczlew...@nabijaczleweli.xyz> wrote:

This patch, effectively, understands that -ENOTTY means "this is not an
XBOOTLDR partition" and lets the installation progress normally.

Please consider applying this.

This patch has been cherry-picked into 252.8, so should be fixed in 252.11-1.

Regards,
Michael

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


--- End Message ---

Reply via email to