From: Adrian Bunk - create one common dump_thread() prototype in kernel.h - dump_thread() is only used in fs/binfmt_aout.c and can therefore be removed on all architectures where CONFIG_BINFMT_AOUT is not available Signed-off-by: Adrian Bunk Signed-off-by: Andrew Morton --- arch/alpha/kernel/alpha_ksyms.c | 1 arch/arm26/kernel/armksyms.c | 1 arch/cris/kernel/crisksyms.c | 2 - arch/cris/kernel/process.c | 28 --------------- arch/frv/kernel/frv_ksyms.c | 2 - arch/frv/kernel/process.c | 22 ------------ arch/h8300/kernel/h8300_ksyms.c | 3 - arch/h8300/kernel/process.c | 28 --------------- arch/m32r/kernel/m32r_ksyms.c | 3 - arch/m32r/kernel/process.c | 8 ---- arch/m68k/kernel/m68k_ksyms.c | 2 - arch/m68knommu/kernel/m68k_ksyms.c | 2 - arch/m68knommu/kernel/process.c | 46 -------------------------- arch/s390/kernel/process.c | 21 ----------- arch/sh/kernel/process.c | 20 ----------- arch/sh/kernel/sh_ksyms.c | 2 - arch/sh64/kernel/process.c | 20 ----------- arch/sh64/kernel/sh_ksyms.c | 2 - arch/sparc/kernel/sparc_ksyms.c | 2 - arch/sparc64/kernel/binfmt_aout32.c | 2 - arch/sparc64/kernel/sparc64_ksyms.c | 2 - arch/v850/kernel/process.c | 24 ------------- arch/v850/kernel/v850_ksyms.c | 2 - fs/binfmt_aout.c | 2 - fs/binfmt_flat.c | 2 - include/asm-um/processor-generic.h | 1 include/linux/kernel.h | 4 ++ 27 files changed, 4 insertions(+), 250 deletions(-) diff -puN arch/alpha/kernel/alpha_ksyms.c~dump_thread-cleanup arch/alpha/kernel/alpha_ksyms.c --- devel/arch/alpha/kernel/alpha_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/alpha/kernel/alpha_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -40,7 +40,6 @@ #include extern struct hwrpb_struct *hwrpb; -extern void dump_thread(struct pt_regs *, struct user *); extern spinlock_t rtc_lock; /* these are C runtime functions with special calling conventions: */ diff -puN arch/arm26/kernel/armksyms.c~dump_thread-cleanup arch/arm26/kernel/armksyms.c --- devel/arch/arm26/kernel/armksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/arm26/kernel/armksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -35,7 +35,6 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); extern int dump_fpu(struct pt_regs *, struct user_fp_struct *); extern void inswb(unsigned int port, void *to, int len); extern void outswb(unsigned int port, const void *to, int len); diff -puN arch/cris/kernel/crisksyms.c~dump_thread-cleanup arch/cris/kernel/crisksyms.c --- devel/arch/cris/kernel/crisksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/cris/kernel/crisksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -21,7 +21,6 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); extern unsigned long get_cmos_time(void); extern void __Udiv(void); extern void __Umod(void); @@ -33,7 +32,6 @@ extern void __lshrdi3(void); extern void iounmap(volatile void * __iomem); /* Platform dependent support */ -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(kernel_thread); EXPORT_SYMBOL(get_cmos_time); EXPORT_SYMBOL(loops_per_usec); diff -puN arch/cris/kernel/process.c~dump_thread-cleanup arch/cris/kernel/process.c --- devel/arch/cris/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/cris/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -257,34 +257,6 @@ void flush_thread(void) { } -/* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ -#if 0 - int i; - - /* changed the size calculations - should hopefully work better. lbt */ - dump->magic = CMAGIC; - dump->start_code = 0; - dump->start_stack = regs->esp & ~(PAGE_SIZE - 1); - dump->u_tsize = ((unsigned long) current->mm->end_code) >> PAGE_SHIFT; - dump->u_dsize = ((unsigned long) (current->mm->brk + (PAGE_SIZE-1))) >> PAGE_SHIFT; - dump->u_dsize -= dump->u_tsize; - dump->u_ssize = 0; - for (i = 0; i < 8; i++) - dump->u_debugreg[i] = current->debugreg[i]; - - if (dump->start_stack < TASK_SIZE) - dump->u_ssize = ((unsigned long) (TASK_SIZE - dump->start_stack)) >> PAGE_SHIFT; - - dump->regs = *regs; - - dump->u_fpvalid = dump_fpu (regs, &dump->i387); -#endif -} - /* Fill in the fpu structure for a core dump. */ int dump_fpu(struct pt_regs *regs, elf_fpregset_t *fpu) { diff -puN arch/frv/kernel/frv_ksyms.c~dump_thread-cleanup arch/frv/kernel/frv_ksyms.c --- devel/arch/frv/kernel/frv_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/frv/kernel/frv_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -18,7 +18,6 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); extern long __memcpy_user(void *dst, const void *src, size_t count); /* platform dependent support */ @@ -26,7 +25,6 @@ extern long __memcpy_user(void *dst, con EXPORT_SYMBOL(__ioremap); EXPORT_SYMBOL(iounmap); -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(strnlen); EXPORT_SYMBOL(strrchr); EXPORT_SYMBOL(strstr); diff -puN arch/frv/kernel/process.c~dump_thread-cleanup arch/frv/kernel/process.c --- devel/arch/frv/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/frv/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -244,28 +244,6 @@ int copy_thread(int nr, unsigned long cl } /* end copy_thread() */ /* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs *regs, struct user *dump) -{ -#if 0 - /* changed the size calculations - should hopefully work better. lbt */ - dump->magic = CMAGIC; - dump->start_code = 0; - dump->start_stack = user_stack(regs) & ~(PAGE_SIZE - 1); - dump->u_tsize = ((unsigned long) current->mm->end_code) >> PAGE_SHIFT; - dump->u_dsize = ((unsigned long) (current->mm->brk + (PAGE_SIZE-1))) >> PAGE_SHIFT; - dump->u_dsize -= dump->u_tsize; - dump->u_ssize = 0; - - if (dump->start_stack < TASK_SIZE) - dump->u_ssize = ((unsigned long) (TASK_SIZE - dump->start_stack)) >> PAGE_SHIFT; - - dump->regs = *(struct user_context *) regs; -#endif -} - -/* * sys_execve() executes a new program. */ asmlinkage int sys_execve(char *name, char **argv, char **envp) diff -puN arch/h8300/kernel/h8300_ksyms.c~dump_thread-cleanup arch/h8300/kernel/h8300_ksyms.c --- devel/arch/h8300/kernel/h8300_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/h8300/kernel/h8300_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -22,11 +22,8 @@ //asmlinkage long long __lshrdi3 (long long, int); extern char h8300_debug_device[]; -extern void dump_thread(struct pt_regs *, struct user *); - /* platform dependent support */ -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(strnlen); EXPORT_SYMBOL(strrchr); EXPORT_SYMBOL(strstr); diff -puN arch/h8300/kernel/process.c~dump_thread-cleanup arch/h8300/kernel/process.c --- devel/arch/h8300/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/h8300/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -208,34 +208,6 @@ int copy_thread(int nr, unsigned long cl } /* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ -/* changed the size calculations - should hopefully work better. lbt */ - dump->magic = CMAGIC; - dump->start_code = 0; - dump->start_stack = rdusp() & ~(PAGE_SIZE - 1); - dump->u_tsize = ((unsigned long) current->mm->end_code) >> PAGE_SHIFT; - dump->u_dsize = ((unsigned long) (current->mm->brk + - (PAGE_SIZE-1))) >> PAGE_SHIFT; - dump->u_dsize -= dump->u_tsize; - dump->u_ssize = 0; - - dump->u_ar0 = (struct user_regs_struct *)(((int)(&dump->regs)) -((int)(dump))); - dump->regs.er0 = regs->er0; - dump->regs.er1 = regs->er1; - dump->regs.er2 = regs->er2; - dump->regs.er3 = regs->er3; - dump->regs.er4 = regs->er4; - dump->regs.er5 = regs->er5; - dump->regs.er6 = regs->er6; - dump->regs.orig_er0 = regs->orig_er0; - dump->regs.ccr = regs->ccr; - dump->regs.pc = regs->pc; -} - -/* * sys_execve() executes a new program. */ asmlinkage int sys_execve(char *name, char **argv, char **envp,int dummy,...) diff -puN arch/m32r/kernel/m32r_ksyms.c~dump_thread-cleanup arch/m32r/kernel/m32r_ksyms.c --- devel/arch/m32r/kernel/m32r_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/m32r/kernel/m32r_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -18,8 +18,6 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); - #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_HD) || defined(CONFIG_BLK_DEV_IDE_MODULE) || defined(CONFIG_BLK_DEV_HD_MODULE) extern struct drive_info_struct drive_info; EXPORT_SYMBOL(drive_info); @@ -27,7 +25,6 @@ EXPORT_SYMBOL(drive_info); /* platform dependent support */ EXPORT_SYMBOL(boot_cpu_data); -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(dump_fpu); EXPORT_SYMBOL(__ioremap); EXPORT_SYMBOL(iounmap); diff -puN arch/m32r/kernel/process.c~dump_thread-cleanup arch/m32r/kernel/process.c --- devel/arch/m32r/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/m32r/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -261,14 +261,6 @@ int copy_thread(int nr, unsigned long cl } /* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ - /* M32R_FIXME */ -} - -/* * Capture the user space registers if the task is not running (in user space) */ int dump_task_regs(struct task_struct *tsk, elf_gregset_t *regs) diff -puN arch/m68k/kernel/m68k_ksyms.c~dump_thread-cleanup arch/m68k/kernel/m68k_ksyms.c --- devel/arch/m68k/kernel/m68k_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/m68k/kernel/m68k_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -23,8 +23,6 @@ asmlinkage long long __lshrdi3 (long lon asmlinkage long long __muldi3 (long long, long long); extern char m68k_debug_device[]; -extern void dump_thread(struct pt_regs *, struct user *); - /* platform dependent support */ EXPORT_SYMBOL(m68k_machtype); diff -puN arch/m68knommu/kernel/m68k_ksyms.c~dump_thread-cleanup arch/m68knommu/kernel/m68k_ksyms.c --- devel/arch/m68knommu/kernel/m68k_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/m68knommu/kernel/m68k_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -18,7 +18,6 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); extern int dump_fpu(struct pt_regs *, elf_fpregset_t *); /* platform dependent support */ @@ -26,7 +25,6 @@ extern int dump_fpu(struct pt_regs *, el EXPORT_SYMBOL(__ioremap); EXPORT_SYMBOL(iounmap); EXPORT_SYMBOL(dump_fpu); -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(strnlen); EXPORT_SYMBOL(strrchr); EXPORT_SYMBOL(strstr); diff -puN arch/m68knommu/kernel/process.c~dump_thread-cleanup arch/m68knommu/kernel/process.c --- devel/arch/m68knommu/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/m68knommu/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -276,52 +276,6 @@ int dump_fpu(struct pt_regs *regs, struc } /* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ - struct switch_stack *sw; - - /* changed the size calculations - should hopefully work better. lbt */ - dump->magic = CMAGIC; - dump->start_code = 0; - dump->start_stack = rdusp() & ~(PAGE_SIZE - 1); - dump->u_tsize = ((unsigned long) current->mm->end_code) >> PAGE_SHIFT; - dump->u_dsize = ((unsigned long) (current->mm->brk + - (PAGE_SIZE-1))) >> PAGE_SHIFT; - dump->u_dsize -= dump->u_tsize; - dump->u_ssize = 0; - - if (dump->start_stack < TASK_SIZE) - dump->u_ssize = ((unsigned long) (TASK_SIZE - dump->start_stack)) >> PAGE_SHIFT; - - dump->u_ar0 = (struct user_regs_struct *)((int)&dump->regs - (int)dump); - sw = ((struct switch_stack *)regs) - 1; - dump->regs.d1 = regs->d1; - dump->regs.d2 = regs->d2; - dump->regs.d3 = regs->d3; - dump->regs.d4 = regs->d4; - dump->regs.d5 = regs->d5; - dump->regs.d6 = sw->d6; - dump->regs.d7 = sw->d7; - dump->regs.a0 = regs->a0; - dump->regs.a1 = regs->a1; - dump->regs.a2 = regs->a2; - dump->regs.a3 = sw->a3; - dump->regs.a4 = sw->a4; - dump->regs.a5 = sw->a5; - dump->regs.a6 = sw->a6; - dump->regs.d0 = regs->d0; - dump->regs.orig_d0 = regs->orig_d0; - dump->regs.stkadj = regs->stkadj; - dump->regs.sr = regs->sr; - dump->regs.pc = regs->pc; - dump->regs.fmtvec = (regs->format << 12) | regs->vector; - /* dump floating point stuff */ - dump->u_fpvalid = dump_fpu (regs, &dump->m68kfp); -} - -/* * Generic dumping code. Used for panic and debug. */ void dump(struct pt_regs *fp) diff -puN arch/s390/kernel/process.c~dump_thread-cleanup arch/s390/kernel/process.c --- devel/arch/s390/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/s390/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -352,27 +352,6 @@ int dump_fpu (struct pt_regs * regs, s39 return 1; } -/* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ - -/* changed the size calculations - should hopefully work better. lbt */ - dump->magic = CMAGIC; - dump->start_code = 0; - dump->start_stack = regs->gprs[15] & ~(PAGE_SIZE - 1); - dump->u_tsize = current->mm->end_code >> PAGE_SHIFT; - dump->u_dsize = (current->mm->brk + PAGE_SIZE - 1) >> PAGE_SHIFT; - dump->u_dsize -= dump->u_tsize; - dump->u_ssize = 0; - if (dump->start_stack < TASK_SIZE) - dump->u_ssize = (TASK_SIZE - dump->start_stack) >> PAGE_SHIFT; - memcpy(&dump->regs, regs, sizeof(s390_regs)); - dump_fpu (regs, &dump->regs.fp_regs); - dump->regs.per_info = current->thread.per_info; -} - unsigned long get_wchan(struct task_struct *p) { struct stack_frame *sf, *low, *high; diff -puN arch/sh64/kernel/process.c~dump_thread-cleanup arch/sh64/kernel/process.c --- devel/arch/sh64/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sh64/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -775,26 +775,6 @@ int copy_thread(int nr, unsigned long cl return 0; } -/* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ - dump->magic = CMAGIC; - dump->start_code = current->mm->start_code; - dump->start_data = current->mm->start_data; - dump->start_stack = regs->regs[15] & ~(PAGE_SIZE - 1); - dump->u_tsize = (current->mm->end_code - dump->start_code) >> PAGE_SHIFT; - dump->u_dsize = (current->mm->brk + (PAGE_SIZE-1) - dump->start_data) >> PAGE_SHIFT; - dump->u_ssize = (current->mm->start_stack - dump->start_stack + - PAGE_SIZE - 1) >> PAGE_SHIFT; - /* Debug registers will come here. */ - - dump->regs = *regs; - - dump->u_fpvalid = dump_fpu(regs, &dump->fpu); -} - asmlinkage int sys_fork(unsigned long r2, unsigned long r3, unsigned long r4, unsigned long r5, unsigned long r6, unsigned long r7, diff -puN arch/sh64/kernel/sh_ksyms.c~dump_thread-cleanup arch/sh64/kernel/sh_ksyms.c --- devel/arch/sh64/kernel/sh_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sh64/kernel/sh_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -29,7 +29,6 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); extern int dump_fpu(struct pt_regs *, elf_fpregset_t *); #if 0 @@ -41,7 +40,6 @@ EXPORT_SYMBOL(drive_info); #endif /* platform dependent support */ -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(dump_fpu); EXPORT_SYMBOL(iounmap); EXPORT_SYMBOL(enable_irq); diff -puN arch/sh/kernel/process.c~dump_thread-cleanup arch/sh/kernel/process.c --- devel/arch/sh/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sh/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -305,26 +305,6 @@ int copy_thread(int nr, unsigned long cl return 0; } -/* - * fill in the user structure for a core dump.. - */ -void dump_thread(struct pt_regs * regs, struct user * dump) -{ - dump->magic = CMAGIC; - dump->start_code = current->mm->start_code; - dump->start_data = current->mm->start_data; - dump->start_stack = regs->regs[15] & ~(PAGE_SIZE - 1); - dump->u_tsize = (current->mm->end_code - dump->start_code) >> PAGE_SHIFT; - dump->u_dsize = (current->mm->brk + (PAGE_SIZE-1) - dump->start_data) >> PAGE_SHIFT; - dump->u_ssize = (current->mm->start_stack - dump->start_stack + - PAGE_SIZE - 1) >> PAGE_SHIFT; - /* Debug registers will come here. */ - - dump->regs = *regs; - - dump->u_fpvalid = dump_fpu(regs, &dump->fpu); -} - /* Tracing by user break controller. */ static void ubc_set_tracing(int asid, unsigned long pc) diff -puN arch/sh/kernel/sh_ksyms.c~dump_thread-cleanup arch/sh/kernel/sh_ksyms.c --- devel/arch/sh/kernel/sh_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sh/kernel/sh_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -21,14 +21,12 @@ #include #include -extern void dump_thread(struct pt_regs *, struct user *); extern int dump_fpu(struct pt_regs *, elf_fpregset_t *); extern struct hw_interrupt_type no_irq_type; EXPORT_SYMBOL(sh_mv); /* platform dependent support */ -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(dump_fpu); EXPORT_SYMBOL(iounmap); EXPORT_SYMBOL(enable_irq); diff -puN arch/sparc64/kernel/binfmt_aout32.c~dump_thread-cleanup arch/sparc64/kernel/binfmt_aout32.c --- devel/arch/sparc64/kernel/binfmt_aout32.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sparc64/kernel/binfmt_aout32.c 2006-01-06 18:14:52.000000000 -0800 @@ -36,8 +36,6 @@ static int load_aout32_binary(struct lin static int load_aout32_library(struct file*); static int aout32_core_dump(long signr, struct pt_regs * regs, struct file *file); -extern void dump_thread(struct pt_regs *, struct user *); - static struct linux_binfmt aout32_format = { NULL, THIS_MODULE, load_aout32_binary, load_aout32_library, aout32_core_dump, PAGE_SIZE diff -puN arch/sparc64/kernel/sparc64_ksyms.c~dump_thread-cleanup arch/sparc64/kernel/sparc64_ksyms.c --- devel/arch/sparc64/kernel/sparc64_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sparc64/kernel/sparc64_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -94,7 +94,6 @@ extern void (*prom_palette)(int); extern int __ashrdi3(int, int); -extern void dump_thread(struct pt_regs *, struct user *); extern int dump_fpu (struct pt_regs * regs, elf_fpregset_t * fpregs); extern unsigned long phys_base; @@ -241,7 +240,6 @@ EXPORT_SYMBOL(io_remap_pfn_range); EXPORT_SYMBOL(_sigpause_common); EXPORT_SYMBOL(verify_compat_iovec); -EXPORT_SYMBOL(dump_thread); EXPORT_SYMBOL(dump_fpu); EXPORT_SYMBOL(pte_alloc_one_kernel); #ifndef CONFIG_SMP diff -puN arch/sparc/kernel/sparc_ksyms.c~dump_thread-cleanup arch/sparc/kernel/sparc_ksyms.c --- devel/arch/sparc/kernel/sparc_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/sparc/kernel/sparc_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -82,8 +82,6 @@ extern int __lshrdi3(int, int); extern int __muldi3(int, int); extern int __divdi3(int, int); -extern void dump_thread(struct pt_regs *, struct user *); - /* Private functions with odd calling conventions. */ extern void ___atomic24_add(void); extern void ___atomic24_sub(void); diff -puN arch/v850/kernel/process.c~dump_thread-cleanup arch/v850/kernel/process.c --- devel/arch/v850/kernel/process.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/v850/kernel/process.c 2006-01-06 18:14:52.000000000 -0800 @@ -164,30 +164,6 @@ int copy_thread (int nr, unsigned long c } /* - * fill in the user structure for a core dump.. - */ -void dump_thread (struct pt_regs *regs, struct user *dump) -{ -#if 0 /* Later. XXX */ - dump->magic = CMAGIC; - dump->start_code = 0; - dump->start_stack = regs->gpr[GPR_SP]; - dump->u_tsize = ((unsigned long) current->mm->end_code) >> PAGE_SHIFT; - dump->u_dsize = ((unsigned long) (current->mm->brk + - (PAGE_SIZE-1))) >> PAGE_SHIFT; - dump->u_dsize -= dump->u_tsize; - dump->u_ssize = 0; - - if (dump->start_stack < TASK_SIZE) - dump->u_ssize = ((unsigned long) (TASK_SIZE - dump->start_stack)) >> PAGE_SHIFT; - - dump->u_ar0 = (struct user_regs_struct *)((int)&dump->regs - (int)dump); - dump->regs = *regs; - dump->u_fpvalid = 0; -#endif -} - -/* * sys_execve() executes a new program. */ int sys_execve (char *name, char **argv, char **envp, struct pt_regs *regs) diff -puN arch/v850/kernel/v850_ksyms.c~dump_thread-cleanup arch/v850/kernel/v850_ksyms.c --- devel/arch/v850/kernel/v850_ksyms.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/arch/v850/kernel/v850_ksyms.c 2006-01-06 18:14:52.000000000 -0800 @@ -21,8 +21,6 @@ extern void *trap_table; EXPORT_SYMBOL (trap_table); /* platform dependent support */ -extern void dump_thread (struct pt_regs *, struct user *); -EXPORT_SYMBOL (dump_thread); EXPORT_SYMBOL (kernel_thread); EXPORT_SYMBOL (enable_irq); EXPORT_SYMBOL (disable_irq); diff -puN fs/binfmt_aout.c~dump_thread-cleanup fs/binfmt_aout.c --- devel/fs/binfmt_aout.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/fs/binfmt_aout.c 2006-01-06 18:14:52.000000000 -0800 @@ -33,8 +33,6 @@ static int load_aout_binary(struct linux static int load_aout_library(struct file*); static int aout_core_dump(long signr, struct pt_regs * regs, struct file *file); -extern void dump_thread(struct pt_regs *, struct user *); - static struct linux_binfmt aout_format = { .module = THIS_MODULE, .load_binary = load_aout_binary, diff -puN fs/binfmt_flat.c~dump_thread-cleanup fs/binfmt_flat.c --- devel/fs/binfmt_flat.c~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/fs/binfmt_flat.c 2006-01-06 18:14:52.000000000 -0800 @@ -77,8 +77,6 @@ static int load_flat_shared_library(int static int load_flat_binary(struct linux_binprm *, struct pt_regs * regs); static int flat_core_dump(long signr, struct pt_regs * regs, struct file *file); -extern void dump_thread(struct pt_regs *, struct user *); - static struct linux_binfmt flat_format = { .module = THIS_MODULE, .load_binary = load_flat_binary, diff -puN include/asm-um/processor-generic.h~dump_thread-cleanup include/asm-um/processor-generic.h --- devel/include/asm-um/processor-generic.h~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/include/asm-um/processor-generic.h 2006-01-06 18:14:52.000000000 -0800 @@ -89,7 +89,6 @@ extern struct task_struct *alloc_task_st extern void release_thread(struct task_struct *); extern int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags); -extern void dump_thread(struct pt_regs *regs, struct user *u); static inline void prepare_to_copy(struct task_struct *tsk) { diff -puN include/linux/kernel.h~dump_thread-cleanup include/linux/kernel.h --- devel/include/linux/kernel.h~dump_thread-cleanup 2006-01-06 18:14:52.000000000 -0800 +++ devel-akpm/include/linux/kernel.h 2006-01-06 18:14:52.000000000 -0800 @@ -13,6 +13,7 @@ #include #include #include +#include #include #include @@ -123,6 +124,9 @@ extern int __kernel_text_address(unsigne extern int kernel_text_address(unsigned long addr); extern int session_of_pgrp(int pgrp); +struct pt_regs; +extern void dump_thread(struct pt_regs *regs, struct user *dump); + #ifdef CONFIG_PRINTK asmlinkage int vprintk(const char *fmt, va_list args) __attribute__ ((format (printf, 1, 0))); _