[Bug 2028931] Re: device tree protocol not always applied
Julian Andres Klode
2028931 at bugs.launchpad.net
Mon Oct 2 17:28:55 UTC 2023
** Description changed:
[Impact]
- device tree fixups are not applied when grub_fdt_load() has been called before, as that copies the device tree + extra space into a new fdt variable.
+ device tree fixups are not applied when grub_fdt_load() has been called before, as that copies the device tree + extra space into a new fdt variable.
For example, when a pre-LoadFile2 kernel is being loaded, grub passes
the initrd via device tree and needs to modify it, for which it calls
the function. On pre-2.12 loaders, this happens for every kernel on
arm64 as we do not support LoadFile2 there.
[Test plan]
- TBD
+ Isaac has run the test to make sure the change works and Mate has verified that it doesn't regress qemu booting across a wide set of scenarios but either way we'd not block update releases on this but would rather reset the tasks after.
[Where problems could occur]
We're moving the fixup of the device tree to directly after loading it, so that grub can make any modifications to set initrd for example (there are no others yet), later.
Device tree fixup suddenly working can of course cause regressions if
the fixups in u-boot are wrong.
--
You received this bug notification because you are a member of Ubuntu
Foundations Bugs, which is subscribed to grub2-unsigned in Ubuntu.
https://bugs.launchpad.net/bugs/2028931
Title:
device tree protocol not always applied
Status in grub2-unsigned package in Ubuntu:
Fix Released
Status in grub2 source package in Focal:
Won't Fix
Status in grub2-unsigned source package in Focal:
Triaged
Status in grub2 source package in Jammy:
Won't Fix
Status in grub2-unsigned source package in Jammy:
Triaged
Status in grub2 source package in Lunar:
Won't Fix
Status in grub2-unsigned source package in Lunar:
Triaged
Status in grub2 source package in Mantic:
Fix Released
Status in grub2-unsigned source package in Mantic:
Fix Released
Bug description:
[Impact]
device tree fixups are not applied when grub_fdt_load() has been called before, as that copies the device tree + extra space into a new fdt variable.
For example, when a pre-LoadFile2 kernel is being loaded, grub passes
the initrd via device tree and needs to modify it, for which it calls
the function. On pre-2.12 loaders, this happens for every kernel on
arm64 as we do not support LoadFile2 there.
[Test plan]
Isaac has run the test to make sure the change works and Mate has verified that it doesn't regress qemu booting across a wide set of scenarios but either way we'd not block update releases on this but would rather reset the tasks after.
[Where problems could occur]
We're moving the fixup of the device tree to directly after loading it, so that grub can make any modifications to set initrd for example (there are no others yet), later.
Device tree fixup suddenly working can of course cause regressions if
the fixups in u-boot are wrong.
To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/grub2-unsigned/+bug/2028931/+subscriptions
More information about the foundations-bugs
mailing list