Re: tools/liblockdep: Build failure

From: Robin Hack
Date: Tue Apr 01 2014 - 04:12:10 EST


More investigation reveals this:

(from common.o which is output of gcc -E)
# 1 "./uinclude/linux/linkage.h" 1

pwd is: linux/tools/lib/lockdep
$ cat ./uinclude/linux/linkage.h

/* empty file */


Have nice day
Robin Hack
On Tue, Apr 01, 2014 at 10:02:58AM +0200, Robin Hack wrote:
> Hi.
>
> I have same issue.
>
> I investigated output of gcc -E and I found that asmlinkage macro isn't
> expanded as is expected.
>
> $ grep asmlinkage common.o
> asmlinkage extern void lockdep_sys_exit(void);
>
> On Tue, Apr 01, 2014 at 06:04:35AM +0000, Eunbong Song wrote:
> >
> > There is tools/liblockdep build failure.
> > I have been trying to find the cause and i found commit id 63f9a7fde715352e0769302527670542a664b981 is the casue.
> >
> > Author: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> > Date: Sat Feb 8 08:52:01 2014 +0100
> >
> > asmlinkage: Make lockdep_sys_exit asmlinkage
> >
> > lockdep_sys_exit can be called from assembler code, so make it
> > asmlinkage.
> >
> > Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> > Cc: Ingo Molnar <mingo@xxxxxxxxxx>
> > Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> > Link: http://lkml.kernel.org/r/1391845930-28580-5-git-send-email-ak@xxxxxxxxxxxxxxx
> > Signed-off-by: H. Peter Anvin <hpa@xxxxxxxxxxxxxxx>
> >
> > diff --git a/include/linux/lockdep.h b/include/linux/lockdep.h
> > index 92b1bfc..7df9aa6 100644
> > --- a/include/linux/lockdep.h
> > +++ b/include/linux/lockdep.h
> > @@ -265,7 +265,7 @@ extern void lockdep_info(void);
> > extern void lockdep_reset(void);
> > extern void lockdep_reset_lock(struct lockdep_map *lock);
> > extern void lockdep_free_key_range(void *start, unsigned long size);
> > -extern void lockdep_sys_exit(void);
> > +extern asmlinkage void lockdep_sys_exit(void);
> >
> > extern void lockdep_off(void);
> > extern void lockdep_on(void);
> > diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
> > index eb8a547..c8b6753 100644
> > --- a/kernel/locking/lockdep.c
> > +++ b/kernel/locking/lockdep.c
> > @@ -4191,7 +4191,7 @@ void debug_show_held_locks(struct task_struct *task)
> > }
> > EXPORT_SYMBOL_GPL(debug_show_held_locks);
> >
> > -void lockdep_sys_exit(void)
> > +asmlinkage void lockdep_sys_exit(void)
> > {
> > struct task_struct *curr = current;
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/