11 Mar 2025 |
ElvishJerricco | I mean certainly there's something different about these that causes the issue, as they are indeed the parameters that triggers the broken boot loader behavior | 05:42:13 |
ElvishJerricco | just can't think of anything | 05:42:21 |
ElvishJerricco | I don't know enough about how PEs work but it might be something as stupid as the virtual addresses used by the kernel sections? (Is that the right terminology for a kernel PE?) | 05:43:45 |
raitobezarius | In reply to @elvishjerricco:matrix.org I don't know enough about how PEs work but it might be something as stupid as the virtual addresses used by the kernel sections? (Is that the right terminology for a kernel PE?) bingrep might help | 11:39:13 |
Arian | Didn't systemd-boot have some weird changes in stub | 15:15:20 |
Arian | Not that this should affect a normal nixos install though.. | 15:16:45 |
ElvishJerricco | jesus the guy has a 350M initrd | 17:59:00 |
ElvishJerricco | https://discourse.nixos.org/t/systemd-boot-failing-to-boot-a-nixos-warbler-system-due-to-an-efi-assertion-failure/61450/13?u=elvishjerricco | 17:59:01 |
ElvishJerricco | ok that's a bug of its own | 17:59:10 |
ElvishJerricco | we shouldn't make initrds that big unless user knows what and why | 17:59:26 |
ElvishJerricco | but also systemd-boot shouldn't die because of it | 17:59:55 |
aloisw | Well 350M not fitting into memory after decompression sounds plausible. | 18:00:44 |
ElvishJerricco | plausible for the 4G boundary, yes | 18:01:06 |
ElvishJerricco | I wouldn't say likely | 18:01:11 |
ElvishJerricco | it's like right on the edge | 18:01:14 |
ElvishJerricco | when do you get a more than 10x compression ratio? | 18:01:50 |
aloisw | It has to be contiguous memory below 4G. | 18:01:59 |
ElvishJerricco | oh so it might be putting the uncompressed initrd near-to-but-not-right-at the boundary? | 18:02:30 |
ElvishJerricco | close enough that it pretty much always fits, unless you have a massive initrd? | 18:02:47 |
aloisw | In reply to @elvishjerricco:matrix.org when do you get a more than 10x compression ratio? I have no idea what got put in their initrd, it's so out of the normal that it's plausible that it either compresses very well or not at all. (Really it should be figured out what got into there and the bug fixed.) | 18:03:36 |
ElvishJerricco | well yea, like I said, there's two bugs here. An initrd like that should obviously not happen, but also systemd-boot shouldn't die over it | 18:04:26 |
ElvishJerricco | oh I have a suspicion | 18:04:35 |
ElvishJerricco | they used scripted initrd and added a *Commands fragment that pulled in some super massive package because scripted initrd pulls in whole closures | 18:05:10 |
ElvishJerricco | "super massive" that's not even that massive | 18:05:35 |
aloisw | In reply to @elvishjerricco:matrix.org close enough that it pretty much always fits, unless you have a massive initrd? I have no idea where it puts the stuff (probably it just uses the UEFI allocator), but most machines don't have contiguous physical memory and who knows where the compressed initrd fragmented it more. | 18:05:44 |
aloisw | In reply to @elvishjerricco:matrix.org they used scripted initrd and added a *Commands fragment that pulled in some super massive package because scripted initrd pulls in whole closures Why did it only blow up on 25.05 then? | 18:06:07 |
ElvishJerricco | it's weird | 18:06:07 |
ElvishJerricco | systemd-boot or systemd-stub will pass the initrd via a custom uefi protocl | 18:06:22 |
ElvishJerricco | ... yea good point nevermind | 18:06:37 |
aloisw | In reply to @elvishjerricco:matrix.org systemd-boot or systemd-stub will pass the initrd via a custom uefi protocl Oh wait, it's only the kernel that decompresses it. Ignore what I said then. | 18:07:10 |