[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20091113090932.GC4839@osiris.boeblingen.de.ibm.com>
Date: Fri, 13 Nov 2009 10:09:32 +0100
From: Heiko Carstens <heiko.carstens@...ibm.com>
To: Thomas Gleixner <tglx@...utronix.de>
Cc: LKML <linux-kernel@...r.kernel.org>,
Linus Torvalds <torvalds@...ux-foundation.org>,
Ingo Molnar <mingo@...e.hu>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
linux-arch@...r.kernel.org
Subject: Re: [patch 1/2] locking: Make inlining decision Kconfig based
On Mon, Nov 09, 2009 at 03:21:34PM -0000, Thomas Gleixner wrote:
> commit 892a7c67 (locking: Allow arch-inlined spinlocks) implements the
> selection of which lock functions are inlined based on defines in
> arch/.../spinlock.h: #define __always_inline__LOCK_FUNCTION
>
> Despite of the name __always_inline__* the lock functions can be built
> out of line depending on config options. Also if the arch does not set
> some inline defines the generic code might set them; again depending on
> config options.
>
> This makes it unnecessary hard to figure out when and which lock
> functions are inlined. Aside of that it makes it way harder and
> messier for -rt to manipulate the lock functions.
>
> Convert the inlining decision to CONFIG switches. Each lock function
> is inlined depending on CONFIG_INLINE_*. The configs implement the
> existing dependencies. The architecture code can select ARCH_INLINE_*
> to signal that it wants the corresponding lock function inlined.
> ARCH_INLINE_* is necessary as Kconfig ignores "depends on"
> restrictions when a config element is selected.
>
> No functional change.
>
> Signed-off-by: Thomas Gleixner <tglx@...utronix.de>
> Cc: Linus Torvalds <torvalds@...ux-foundation.org>
> Cc: Heiko Carstens <heiko.carstens@...ibm.com>
> Cc: Ingo Molnar <mingo@...e.hu>
> Cc: Peter Zijlstra <a.p.zijlstra@...llo.nl>
> Cc: linux-arch@...r.kernel.org
> ---
> arch/s390/Kconfig | 28 +++++
> arch/s390/include/asm/spinlock.h | 29 -----
> include/linux/spinlock_api_smp.h | 75 +++++---------
> init/Kconfig | 1
> kernel/Kconfig.locks | 199 +++++++++++++++++++++++++++++++++++++++
> kernel/spinlock.c | 56 +++++-----
> 6 files changed, 284 insertions(+), 104 deletions(-)
Acked-by: Heiko Carstens <heiko.carstens@...ibm.com>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists