Re: [PATCH 03/14] mn10300: Use macros for .bss.page_aligned section.

David Howells
2009-04-28T12:47:17Z

Tim Abbott <tabbott@MIT.EDU> wrote:

> No, it is. The macro is new in PATCH 1/14 of this series.

Aha! Okay, I've applied that patch too, and now I see:

LD .tmp_vmlinux1
/opt/nickc/H-i686-pc-linux-gnulibc2.3/bin/am33_2.0-linux-gnu-ld:arch/mn10300/kernel/vmlinux.lds:237: syntax error

Where the error occurs on line 237, which is:

__bss_start = .; /* BSS */
.bss : {
. = ALIGN(+(1 << 12)) *(.bss.page_aligned)
*(.bss)
==> }
. = ALIGN(4);
__bss_stop = .;

in the expanded linker script.

The problem is that your patch #1 is wrong. You need to apply:

---
diff --git a/include/asm-generic/vmlinux.lds.h b/include/asm-generic/vmlinux.lds.h
index a76275f..c9b16a6 100644
--- a/include/asm-generic/vmlinux.lds.h
+++ b/include/asm-generic/vmlinux.lds.h
@@ -118,11 +118,11 @@
TRACE_SYSCALLS()

#define PAGE_ALIGNED_DATA \
- . = ALIGN(PAGE_SIZE) \
+ . = ALIGN(PAGE_SIZE); \
*(.data.page_aligned)

#define PAGE_ALIGNED_BSS \
- . = ALIGN(PAGE_SIZE) \
+ . = ALIGN(PAGE_SIZE); \
*(.bss.page_aligned)

#define RO_DATA(align) \
---

to it.

David