[PATCH] LoongArch: Load vmlinux.efi to the link address

Simon Horman horms at kernel.org
Sat Dec 2 04:46:53 PST 2023


On Sat, Dec 02, 2023 at 08:30:27PM +0800, Huacai Chen wrote:
> On Sat, Dec 2, 2023 at 6:11 PM WANG Rui <wangrui at loongson.cn> wrote:
> >
> > > On Fri, Nov 24, 2023 at 11:46:58PM +0800, WANG Rui wrote:
> > > > Currently, kexec loads vmlinux.efi to address 0 instead of the link
> > > > address. This causes kexec to fail to boot the new vmlinux.efi on qemu.
> > > >
> > > >   pei_loongarch_load: kernel_segment: 0000000000000000
> > > >   pei_loongarch_load: kernel_entry:   00000000015dc000
> > > >   pei_loongarch_load: image_size:     0000000001f30000
> > > >   pei_loongarch_load: text_offset:    0000000000200000
> > > >   pei_loongarch_load: phys_offset:    0000000000000000
> > > >   pei_loongarch_load: PE format:      yes
> > > >   loongarch_load_other_segments:333: command_line: kexec console=ttyS0,115200
> > > >   kexec_load: entry = 0x15dc000 flags = 0x1020000
> > > >   nr_segments = 2
> > > >   segment[0].buf   = 0x7fffef664010
> > > >   segment[0].bufsz = 0x1de9a00
> > > >   segment[0].mem   = (nil)
> > > >   segment[0].memsz = 0x1f30000
> > > >   segment[1].buf   = 0x555555e480b0
> > > >   segment[1].bufsz = 0x200
> > > >   segment[1].mem   = 0x1f30000
> > > >   segment[1].memsz = 0x4000
> > > >
> > > > This patch adds `text_offset` when adding kernel segment to load
> > > > vmlinux.efi to the link address.
> > > >
> > > >   pei_loongarch_load: kernel_segment: 0000000000000000
> > > >   pei_loongarch_load: kernel_entry:   00000000015dc000
> > > >   pei_loongarch_load: image_size:     0000000001f30000
> > > >   pei_loongarch_load: text_offset:    0000000000200000
> > > >   pei_loongarch_load: phys_offset:    0000000000000000
> > > >   pei_loongarch_load: PE format:      yes
> > > >   loongarch_load_other_segments:335: command_line: kexec console=ttyS0,115200
> > > >   kexec_load: entry = 0x15dc000 flags = 0x1020000
> > > >   nr_segments = 2
> > > >   segment[0].buf   = 0x7ffff1a04010
> > > >   segment[0].bufsz = 0x1de9a00
> > > >   segment[0].mem   = 0x200000
> > > >   segment[0].memsz = 0x1f30000
> > > >   segment[1].buf   = 0x555555b28098
> > > >   segment[1].bufsz = 0x200
> > > >   segment[1].mem   = 0x2130000
> > > >   segment[1].memsz = 0x4000
> > > >
> > > > Signed-off-by: WANG Rui <wangrui at loongson.cn>
> > >
> > > Thanks, applied.
> >
> > Hi Simon,
> >
> > The patch v1 breaks the real machine. Could you please revert it and just keep v2? Thanks.
> Hmmm, if possible, I suggest resetting the old commit before v1 and
> only apply v2... The current status makes the history very very
> confusing.

Thanks, I would rather not drop patches from the tree as it changes
the hashes of the tree from that point. However, in this case, I agree
that a simple revert makes things confusing, so I have done as you suggest
- v1 has been dropped from the tree.

Can you please check that the tree as of the following commit, which is
now the HEAD commit of the main branch, is correct?

549466430ae6 ("LoongArch: Load vmlinux.efi to the link address")



More information about the kexec mailing list