Bug#1032355: systemd-boot: bootctl install/update completely broken with /boot on ZFS
наб
nabijaczleweli at nabijaczleweli.xyz
Thu Jun 15 17:42:16 BST 2023
Control: reopen -1
Control: forwarded -1 https://github.com/systemd/systemd/pull/28048
Ha ha. The person whom this affected got back to me after upgrading to
252.11-1, and it doesn't work.
Odd, since we tested the patch, and applying it before did work.
Turns out: there's two identical conditions, and, when testing, I edited
the correct XBOOTLDR one (around line 800) ‒ and distributed that to the
reporter ‒ but in my systemd upstream check-out,
I edited the one for the ESP around line 500:
nabijaczleweli at tarta:~/uwu/s/systemd-252.11$ grep -n 'This one is not it' src/shared/find-esp.c
530: if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL, -ENOTDIR, -ENOTTY)) /* This one is not it */
817: if (!IN_SET(r, -ENOENT, -EADDRNOTAVAIL, -ENOTDIR)) /* This one is not it */
this, naturally, doesn't work, and not one of the five people that
looked at it noticed that the analysis and mechanics are correct,
but the diff is applied to the wrong hunk.
I'd opened a fixed PR, applying the patch to the second, required,
condition as well, at forwarded-to.
I'm attaching an equivalent version, based on the systemd-252.11 dsc;
I've verified myself that applying it to 252.11-1 fixes the issue
(see forwarded-to).
Sorry for the churn; I hope this can still make it into a bookworm
point release.
Best,
наб
-------------- next part --------------
--- systemd-252.11.orig/src/shared/find-esp.c
+++ systemd-252.11/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;
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-systemd-maintainers/attachments/20230615/1eefda77/attachment.sig>
More information about the Pkg-systemd-maintainers
mailing list