lkml.org 
[lkml]   [2009]   [Apr]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [tip:core/urgent] lockdep: warn about lockdep disabling after kernel taint, fix
On Tue, Apr 14, 2009 at 09:15:38AM +0000, tip-bot for Ingo Molnar wrote:
> Commit-ID: 27b19565fe4ca5b0e9d2ae98ce4b81ca728bf445
> Gitweb: http://git.kernel.org/tip/27b19565fe4ca5b0e9d2ae98ce4b81ca728bf445
> Author: Ingo Molnar <mingo@elte.hu>
> AuthorDate: Tue, 14 Apr 2009 11:03:12 +0200
> Committer: Ingo Molnar <mingo@elte.hu>
> CommitDate: Tue, 14 Apr 2009 11:11:52 +0200
> lockdep: warn about lockdep disabling after kernel taint, fix
>
> Impact: build fix for Sparc and s390
>
> Stephen Rothwell reported that the Sparc build broke:
>
> In file included from kernel/panic.c:12:
> include/linux/debug_locks.h: In function '__debug_locks_off':
> include/linux/debug_locks.h:15: error: implicit declaration of function 'xchg'
>
> due to:
>
> 9eeba61: lockdep: warn about lockdep disabling after kernel taint
>
> There is some inconsistency between architectures about where exactly
> xchg() is defined.
>
> The traditional place is in system.h but the more logical point for it
> is in atomic.h - where most architectures (especially new ones) have
> it defined. These architecture also still offer it via system.h.
>
> Some, such as Sparc or s390 only have it in asm/system.h and not available
> via asm/atomic.h at all.
>
> Use the widest set of headers in debug_locks.h and also include asm/system.h.
>
> Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
> Cc: Frederic Weisbecker <fweisbec@gmail.com>
> Cc: "David S. Miller" <davem@davemloft.net>
> Cc: Linus Torvalds <torvalds@linux-foundation.org>
> LKML-Reference: <20090414144317.026498df.sfr@canb.auug.org.au>
> Signed-off-by: Ingo Molnar <mingo@elte.hu>
>
>
> ---
> include/linux/debug_locks.h | 1 +
> 1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/include/linux/debug_locks.h b/include/linux/debug_locks.h
> index 493dedb..29b3ce3 100644
> --- a/include/linux/debug_locks.h
> +++ b/include/linux/debug_locks.h
> @@ -3,6 +3,7 @@
>
> #include <linux/kernel.h>
> #include <asm/atomic.h>
> +#include <asm/system.h>
>
> struct task_struct;
>



I'm sorry about this build breakage...

I've grep'ed the definitions of xchg() for this pach and indeed remember
that some architectures defined it in asm/atomic.h and
others in asm/system.h

And I've also seen some of them including system.h from
atomic.h so I thought it was safe but.. heh...



\
 
 \ /
  Last update: 2009-04-14 13:49    [from the cache]
©2003-2011 Jasper Spaans