Re: [PATCH] elfcore.h : Fix UML build breakage

From: Parag Warudkar
Date: Wed Jul 08 2009 - 11:52:09 EST




On Wed, 8 Jul 2009, Amerigo Wang wrote:

> On Tue, Jul 07, 2009 at 10:41:50PM -0400, Parag Warudkar wrote:
> >Commit a65e7bfcd74e4c0939f235d2bf9f48ddb3a57991 breaks UML build with
> >below error -
> >
> >In file included from fs/proc/kcore.c:17:
> >include/linux/elfcore.h: In function âelf_core_copy_task_regsâ:
> >include/linux/elfcore.h:129: error: implicit declaration of function
> >âtask_pt_regsâ
> >
> >Fix this by restoring the previous behavior of returning 0 for all arches
> >like UML that don't define task_pt_regs.

> #elif defined doesn't match #ifdef well, how about:
>
> #if defined (ELF_CORE_COPY_TASK_REGS)
> ...
> #elif defined (task_pt_regs)
> ...
> #endif

Updated patch below -

Fix UML build breakage due to commit
a65e7bfcd74e4c0939f235d2bf9f48ddb3a57991.

Signed-off-by: Parag Warudkar <parag.lkml@xxxxxxxxx>

diff --git a/include/linux/elfcore.h b/include/linux/elfcore.h
index 03ec167..00d6a68 100644
--- a/include/linux/elfcore.h
+++ b/include/linux/elfcore.h
@@ -122,10 +122,9 @@ static inline void elf_core_copy_kernel_regs(elf_gregset_t *elfregs, struct pt_r

static inline int elf_core_copy_task_regs(struct task_struct *t, elf_gregset_t* elfregs)
{
-#ifdef ELF_CORE_COPY_TASK_REGS
-
+#if defined (ELF_CORE_COPY_TASK_REGS)
return ELF_CORE_COPY_TASK_REGS(t, elfregs);
-#else
+#elif defined (task_pt_regs)
elf_core_copy_regs(elfregs, task_pt_regs(t));
#endif
return 0;