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

Simon Horman horms at kernel.org
Sat Dec 2 08:35:55 PST 2023


On Sat, Dec 02, 2023 at 10:03:29PM +0800, Huacai Chen wrote:
> On Sat, Dec 2, 2023 at 8:46 PM Simon Horman <horms at kernel.org> wrote:
> >
> > 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")
> Thank you, it is perfect now.

Thanks for bringing this to my attention and thanks for checking.



More information about the kexec mailing list