Skip to contentSkip to conversation

sparc: fix boot regression

PATCH Applied Sam Ravnborg 3 participants 3 messages Dec 1, 2008 – Dec 2, 2008 SPARC + UltraSPARC (sparc/sparc64)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 sparc: fix boot regression

From e3b6fc4081669054768f93ea2605d1eba8e1b256 Mon Sep 17 00:00:00 2001
From: Sam Ravnborg <[email protected]>
Date: Mon, 1 Dec 2008 19:41:49 +0100
Subject: [PATCH] sparc: fix boot regression

Robert reported that 21cb8a43216e0595b466e903e0f2a7ae615d9e11 ("sparc: refactor Makefile") caused a boot regression on sparc. We tracked it down to the removal of the export of kallsyms.o.

This patch adds back the export and the code that was removed in a subsequent commit which uses the exported variable. Why this caused a boot regression is not understood atm.

Robert tested a simpler version of this patch and reported success.

---

The patch is made on top of sparc-next.
Robert - I would appreciate if you could retest on top of sparc-next and confirm that the boot regression is really fixed there.
I added a "Tested-by" since you tested the first version but would like you to really test this before Dave apply it.

Note: Applying this will most likely cause a few trivial conflicts that I posted yesterday.
But lets sort out this and then revisit that patch-set.

Thanks,

Sam

 arch/sparc/Makefile      |    4 ++++
 arch/sparc/boot/Makefile |    2 +-
 2 files changed, 5 insertions(+), 1 deletions(-)
arch/sparc/Makefile +4 -0
index 6df8eb5..317aad6 100644
@@ -89,6 +89,10 @@ VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/
 VMLINUX_MAIN += $(patsubst %/, %/lib.a, $(libs-y)) $(libs-y)
 VMLINUX_MAIN += $(drivers-y) $(net-y)
 
+ifdef CONFIG_KALLSYMS
+export kallsyms.o := .tmp_kallsyms2.o
+endif
+
 boot-y                 := arch/sparc/boot
 boot-$(CONFIG_SPARC64) := arch/sparc64/boot
 
arch/sparc/boot/Makefile +1 -1
index 74ba65b..06b653d 100644
@@ -42,7 +42,7 @@ BTOBJS := $(patsubst %/, %/built-in.o, $(VMLINUX_INIT))
 BTLIBS := $(patsubst %/, %/built-in.o, $(VMLINUX_MAIN))
 LDFLAGS_image := -T arch/sparc/kernel/vmlinux.lds $(BTOBJS) \
                   --start-group $(BTLIBS) --end-group \
-                  $(obj)/btfix.o
+                  $(kallsyms.o) $(obj)/btfix.o
 
 # Link the final image including btfixup'ed symbols.
 # This is a replacement for the link done in the top-level Makefile.
Signature · 1 line
1.5.6.GIT
#1 lore raw
Quoted 61 lines · Sam Ravnborg
Quoted 1 line

From e3b6fc4081669054768f93ea2605d1eba8e1b256 Mon Sep 17 00:00:00 2001

From: Sam Ravnborg <[email protected]>
Date: Mon, 1 Dec 2008 19:41:49 +0100
Subject: [PATCH] sparc: fix boot regression

Robert reported that 21cb8a43216e0595b466e903e0f2a7ae615d9e11 ("sparc: refactor Makefile") caused a boot regression on sparc. We tracked it down to the removal of the export of kallsyms.o.

This patch adds back the export and the code that was removed in a subsequent commit which uses the exported variable. Why this caused a boot regression is not understood atm.

Robert tested a simpler version of this patch and reported success.

---

The patch is made on top of sparc-next.
Robert - I would appreciate if you could retest on top of sparc-next and confirm that the boot regression is really fixed there.
I added a "Tested-by" since you tested the first version but would like you to really test this before Dave apply it.

Note: Applying this will most likely cause a few trivial conflicts that I posted yesterday.
But lets sort out this and then revisit that patch-set.

Thanks,

Sam

 arch/sparc/Makefile      |    4 ++++
 arch/sparc/boot/Makefile |    2 +-
 2 files changed, 5 insertions(+), 1 deletions(-)
arch/sparc/Makefile +4 -0
index 6df8eb5..317aad6 100644
@@ -89,6 +89,10 @@ VMLINUX_MAIN := $(core-y) kernel/ mm/ fs/ ipc/ security/ crypto/ block/
 VMLINUX_MAIN += $(patsubst %/, %/lib.a, $(libs-y)) $(libs-y)
 VMLINUX_MAIN += $(drivers-y) $(net-y)
 
+ifdef CONFIG_KALLSYMS
+export kallsyms.o := .tmp_kallsyms2.o
+endif
+
 boot-y                 := arch/sparc/boot
 boot-$(CONFIG_SPARC64) := arch/sparc64/boot
 
arch/sparc/boot/Makefile +0 -0
index 74ba65b..06b653d 100644

arch/sparc/boot/Makefile BTOBJS := $(patsubst %/, %/built-in.o, $(VMLINUX_INIT)) · line 48

Quoted 8 lines
arch/sparc/boot/Makefile +1 -1
@@ -42,7 +42,7 @@ BTOBJS := $(patsubst %/, %/built-in.o, $(VMLINUX_INIT))
 BTLIBS := $(patsubst %/, %/built-in.o, $(VMLINUX_MAIN))
 LDFLAGS_image := -T arch/sparc/kernel/vmlinux.lds $(BTOBJS) \
                   --start-group $(BTLIBS) --end-group \
-                  $(obj)/btfix.o
+                  $(kallsyms.o) $(obj)/btfix.o
 
 # Link the final image including btfixup'ed symbols.
 # This is a replacement for the link done in the top-level Makefile

This patch also works.

maintainer Applied
#2 lore raw
In reply to Sam Ravnborg

From: Robert Reif <[email protected]>
Date: Mon, 01 Dec 2008 20:21:40 -0500

Quoted 25 lines
Quoted 24 lines · Sam Ravnborg
Quoted 1 line

From e3b6fc4081669054768f93ea2605d1eba8e1b256 Mon Sep 17 00:00:00 2001

From: Sam Ravnborg <[email protected]>
Date: Mon, 1 Dec 2008 19:41:49 +0100
Subject: [PATCH] sparc: fix boot regression

Robert reported that 21cb8a43216e0595b466e903e0f2a7ae615d9e11 ("sparc: refactor Makefile") caused a boot regression on sparc. We tracked it down to the removal of the export of kallsyms.o.

This patch adds back the export and the code that was removed in a subsequent commit which uses the exported variable. Why this caused a boot regression is not understood atm.

Robert tested a simpler version of this patch and reported success.

---

The patch is made on top of sparc-next.
Robert - I would appreciate if you could retest on top of sparc-next and confirm that the boot regression is really fixed there.

...

Quoted 1 line

This patch also works.

Applied, thanks everyone.