Skip to contentSkip to conversation

x86_64 purgatory Makefile typo fix.

PATCH In review Sachin P. Sant 3 participants 6 messages Mar 14, 2008 – Mar 18, 2008

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

PATCH 1/1 x86_64 purgatory Makefile typo fix.

While trying to test latest kexec tools git code on a x86_64 box i ran into following issue. Kexec refused to load both kexec and kdump kernels.

# ./build/sbin/kexec -l /boot/vmlinuz-2.6.25-rc5 --initrd=/boot/initrd-2.6.25-rc5 Symbol: entry32_regs not found cannot get

#

# ./build/kexec -p /boot/vmlinux-kdump --initrd=/boot/initrd-kdump
--append="...."
Symbol: entry64_regs not found cannot get

#

It turns out that entry64.S file under purgatory/arch/x86_64 was not compiled. The original x86_64_PURGATORY_SRCS were being overwritten in the Makefile.

Here is a patch to fix this issue.

Thanks
-Sachin

* This patch fixes a typo in x86_64 purgatory makefile

Signed Off By : Sachin Sant ([email protected])
---

purgatory/arch/x86_64/Makefile +1 -1
diff -Naurp old/purgatory/arch/x86_64/Makefile new/purgatory/arch/x86_64/Makefile
@@ -14,7 +14,7 @@ dist += purgatory/arch/x86_64/Makefile $
 	purgatory/arch/x86_64/purgatory-x86_64.h
 
 # Done add sources in i386/ to dist, as i386/Makefile adds them
-x86_64_PURGATORY_SRCS =  purgatory/arch/i386/entry32-16.S
+x86_64_PURGATORY_SRCS +=  purgatory/arch/i386/entry32-16.S
 x86_64_PURGATORY_SRCS += purgatory/arch/i386/entry32-16-debug.S
 x86_64_PURGATORY_SRCS += purgatory/arch/i386/crashdump_backup.c
 x86_64_PURGATORY_SRCS += purgatory/arch/i386/console-x86.c

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

#1 lore raw
Quoted 6 lines · Sachin P. Sant

It turns out that entry64.S file under purgatory/arch/x86_64 was not compiled. The original x86_64_PURGATORY_SRCS were being overwritten in the Makefile.

Here is a patch to fix this issue.

*arg* Didn't see that posting and fixed it myself. ;-) Anyway, you didn't catch the missing files since you don't use the tarball, so my work was not completely superflous.

Bernhard

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

#2 lore raw
In reply to Sachin P. Sant
Quoted 13 lines · Sachin P. Sant

While trying to test latest kexec tools git code on a x86_64 box i ran into following issue. Kexec refused to load both kexec and kdump kernels.

# ./build/sbin/kexec -l /boot/vmlinuz-2.6.25-rc5 
--initrd=/boot/initrd-2.6.25-rc5 Symbol: entry32_regs not found cannot 
get

#

# ./build/kexec -p /boot/vmlinux-kdump --initrd=/boot/initrd-kdump
--append="...."
Symbol: entry64_regs not found cannot get
Quoted 7 lines

#

It turns out that entry64.S file under purgatory/arch/x86_64 was not compiled. The original x86_64_PURGATORY_SRCS were being overwritten in the Makefile.

Here is a patch to fix this issue.

Ooops, sorry about that.

Perhaps this is worthy of a fresh release?

Signature · 7 lines
Horms


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec
#3 lore raw

Hi Simon,

Quoted 4 lines · Simon Horman

Ooops, sorry about that.

Perhaps this is worthy of a fresh release?

IMO yes since the current release is unusable on x86_64. But please make sure to also include the

 1. The distribution missed the files

        purgatory/arch/x86_64/entry64-32.S,
        purgatory/arch/x86_64/entry64.S,
        purgatory/arch/x86_64/setup-x86_64.S,
        purgatory/arch/x86_64/stack.S,
        purgatory/arch/x86_64/purgatory-x86_64.c

    The problem was that variable expansion in a Makefile is a bit
different from the expectation, i.e. the final value is used even if the variable is used in the middle.

part of my fix.

Bernhard

_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

#4 lore raw
In reply to Bernhard Walle
Quoted 19 lines · Bernhard Walle

Hi Simon,

Quoted 4 lines · Simon Horman

Ooops, sorry about that.

Perhaps this is worthy of a fresh release?

IMO yes since the current release is unusable on x86_64. But please make sure to also include the

 1. The distribution missed the files

        purgatory/arch/x86_64/entry64-32.S,
        purgatory/arch/x86_64/entry64.S,
        purgatory/arch/x86_64/setup-x86_64.S,
        purgatory/arch/x86_64/stack.S,
        purgatory/arch/x86_64/purgatory-x86_64.c

Quoted 5 lines

    The problem was that variable expansion in a Makefile is a bit
different from the expectation, i.e. the final value is used even if the variable is used in the middle.

part of my fix.

Thanks, I wasn't aware that was how make variables work. I've merged your change.

Signature · 7 lines
Horms


_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec