lkml.org 
[lkml]   [2008]   [Aug]   [15]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] x86: fix 2 section mismatch warnings - find_and_reserve_crashkernel
On Wed, Aug 13, 2008 at 04:05:55PM +0200, Ingo Molnar wrote:
>
> * Ingo Molnar <mingo@elte.hu> wrote:
>
> > # 844342a: x86: fix section mismatch warning - spp_getpage()
>
> i've reverted this one as it's wrong and can cause crashes. For example
> native_set_fixmap() gets called on 32-bit kernels from the ELF loader,
> via arch_setup_additional_pages().


$ git grep arch_setup_additional_pages | cat
arch/powerpc/include/asm/elf.h:/* vDSO has arch_setup_additional_pages */
arch/powerpc/include/asm/elf.h:extern int arch_setup_additional_pages(struct linux_binprm *bprm,
arch/powerpc/kernel/vdso.c:int arch_setup_additional_pages(struct linux_binprm *bprm,
arch/sh/include/asm/elf.h:/* vDSO has arch_setup_additional_pages */
arch/sh/include/asm/elf.h:extern int arch_setup_additional_pages(struct linux_binprm *bprm,
arch/sh/kernel/vsyscall/vsyscall.c:int arch_setup_additional_pages(struct linux_binprm *bprm,
arch/x86/vdso/vdso32-setup.c:#define arch_setup_additional_pages syscall32_setup_pages
arch/x86/vdso/vdso32-setup.c:int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack)
arch/x86/vdso/vma.c:int arch_setup_additional_pages(struct linux_binprm *bprm, int exstack)
fs/binfmt_elf.c: retval = arch_setup_additional_pages(bprm, executable_stack);
fs/compat_binfmt_elf.c:#ifdef compat_arch_setup_additional_pages
fs/compat_binfmt_elf.c:#undef arch_setup_additional_pages
fs/compat_binfmt_elf.c:#define arch_setup_additional_pages compat_arch_setup_additional_pages
include/asm-x86/elf.h:extern int arch_setup_additional_pages(struct linux_binprm *bprm,
include/asm-x86/elf.h:#define compat_arch_setup_additional_pages syscall32_setup_pages

$ git grep native_set_fixmap | cat
arch/x86/kernel/paravirt.c: .set_fixmap = native_set_fixmap,
arch/x86/mm/pgtable.c:void __native_set_fixmap(enum fixed_addresses idx, pte_t pte)
arch/x86/mm/pgtable.c:void native_set_fixmap(enum fixed_addresses idx, unsigned long phys, pgprot_t flags)
arch/x86/mm/pgtable.c: __native_set_fixmap(idx, pfn_pte(phys >> PAGE_SHIFT, flags));
arch/x86/xen/enlighten.c: __native_set_fixmap(idx, pte);
include/asm-x86/fixmap.h:void __native_set_fixmap(enum fixed_addresses idx, pte_t pte);
include/asm-x86/fixmap.h:void native_set_fixmap(enum fixed_addresses idx,
include/asm-x86/fixmap.h: native_set_fixmap(idx, phys, flags);

I looked at both implementations of arch_setup_additional_pages and didn't see any call to native_set_fixmap
or function which calls directly native_set_fixmap... Can you tell me what's the callchain?

Marcin


\
 
 \ /
  Last update: 2008-08-15 14:35    [W:0.058 / U:0.060 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site