On Wed, 23 Aug 2023 at 23:53, Mikel Rychliski <mikel@xxxxxxxxxx> wrote: > > preserve_pci_rom_image() was accessing the romsize field in > efi_pci_io_protocol_t directly instead of using the efi_table_attr() > helper. This prevents the ROM image from being saved correctly during a > mixed mode boot. > > Fixes: 2c3625cb9fa2 ("efi/x86: Fold __setup_efi_pci32() and __setup_efi_pci64() into one function") > Signed-off-by: Mikel Rychliski <mikel@xxxxxxxxxx> Thanks, I've queued this up as a fix. > --- > drivers/firmware/efi/libstub/x86-stub.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/firmware/efi/libstub/x86-stub.c b/drivers/firmware/efi/libstub/x86-stub.c > index e976288728e9..2fee52ed335d 100644 > --- a/drivers/firmware/efi/libstub/x86-stub.c > +++ b/drivers/firmware/efi/libstub/x86-stub.c > @@ -72,7 +72,7 @@ preserve_pci_rom_image(efi_pci_io_protocol_t *pci, struct pci_setup_rom **__rom) > rom->data.type = SETUP_PCI; > rom->data.len = size - sizeof(struct setup_data); > rom->data.next = 0; > - rom->pcilen = pci->romsize; > + rom->pcilen = romsize; > *__rom = rom; > > status = efi_call_proto(pci, pci.read, EfiPciIoWidthUint16, > -- > 2.35.3 >