Messages in this thread | | | Date | Thu, 21 Aug 2008 23:15:51 -0700 | From | Andrew Morton <> | Subject | Re: [PATCH] Section mismatch contig_page_data and bootmem_node_data |
| |
On Thu, 21 Aug 2008 22:10:23 +0200 Marcin Slusarz <marcin.slusarz@gmail.com> wrote:
> From: Marcin Slusarz <marcin.slusarz@gmail.com> > Subject: [PATCH] bootmem: don't embed bootmem_data in pglist_data > > Replace direct pointer from struct pglist_data to struct bootmem_data > with index into bootmem_node_data. > > As bootmem_node_data are discarded after bootup this change allows > more fine-grained analysis of access to bootmem data - every access > to bootmem_node_data from non-__init function will now emit section > mismatch warning. > > This patch fixes following section mismatch warning: > WARNING: vmlinux.o(.data+0x1f5c0): Section mismatch in reference from the variable contig_page_data to the variable .init.data:bootmem_node_data > The variable contig_page_data references > the variable __initdata bootmem_node_data > If the reference is valid then annotate the > variable with __init* (see linux/init.h) or name the variable: > *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console, > > Signed-off-by: Marcin Slusarz <marcin.slusarz@gmail.com> > Cc: Johannes Weiner <hannes@saeurebad.de> > --- > arch/alpha/mm/numa.c | 5 +++-- > arch/arm/mm/discontig.c | 32 ++++++++++++++++---------------- > arch/arm/plat-omap/fb.c | 2 +- > arch/avr32/mm/init.c | 5 +++-- > arch/ia64/mm/discontig.c | 5 ++--- > arch/ia64/mm/init.c | 2 +- > arch/m32r/mm/discontig.c | 6 +++--- > arch/m32r/mm/init.c | 4 ++-- > arch/m68k/mm/init.c | 2 +- > arch/mips/sgi-ip27/ip27-memory.c | 2 +- > arch/mn10300/mm/init.c | 9 ++++----- > arch/parisc/mm/init.c | 2 +- > arch/powerpc/mm/numa.c | 2 +- > arch/sh/mm/init.c | 5 +++-- > arch/sh/mm/numa.c | 4 ++-- > arch/sparc64/mm/init.c | 2 +- > arch/x86/mm/discontig_32.c | 2 +- > arch/x86/mm/numa_64.c | 2 +- > include/linux/mmzone.h | 4 +++- > mm/bootmem.c | 30 +++++++++++++++++++----------- > mm/page_alloc.c | 2 +- > 21 files changed, 70 insertions(+), 59 deletions(-)
erp. Can we go with Sean's obviously-safe one-liner for now, fix this up properly in 2.6.28?
Plus... replacing a direct pointer with an index which requires a subscripting operation each time it is used just to fix a section warning is a bit sad.
| |