lkml.org 
[lkml]   [2011]   [Mar]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 1/2] jump label: introduce static_branch() interface
On Thu, Mar 10, 2011 at 03:56:56PM -0500, Steven Rostedt wrote:

> On Wed, 2011-03-09 at 15:47 -0500, Jason Baron wrote:
>
> > arch/mips/include/asm/jump_label.h | 22 +-
> > arch/mips/kernel/jump_label.c | 2 +-
> > arch/sparc/include/asm/jump_label.h | 25 +-
> > arch/x86/include/asm/alternative.h | 3 +-
> > arch/x86/include/asm/jump_label.h | 26 +-
> > arch/x86/kernel/alternative.c | 2 +-
> > arch/x86/kernel/jump_label.c | 2 +-
> > arch/x86/kernel/module.c | 1 +
> > include/asm-generic/vmlinux.lds.h | 14 +-
> > include/linux/dynamic_debug.h | 2 -
> > include/linux/jump_label.h | 86 ++++---
> > include/linux/jump_label_ref.h | 44 ---
> > include/linux/perf_event.h | 26 +-
> > include/linux/tracepoint.h | 22 +-
> > kernel/jump_label.c | 537 ++++++++++++++---------------------
> > kernel/perf_event.c | 4 +-
> > kernel/tracepoint.c | 23 +-
> > 17 files changed, 352 insertions(+), 489 deletions(-)
> > delete mode 100644 include/linux/jump_label_ref.h
> >
> > diff --git a/arch/mips/include/asm/jump_label.h b/arch/mips/include/asm/jump_label.h
> > index 7622ccf..1881b31 100644
> > --- a/arch/mips/include/asm/jump_label.h
> > +++ b/arch/mips/include/asm/jump_label.h
> > @@ -20,16 +20,18 @@
> > #define WORD_INSN ".word"
> > #endif
> >
> > -#define JUMP_LABEL(key, label) \
> > - do { \
> > - asm goto("1:\tnop\n\t" \
> > - "nop\n\t" \
> > - ".pushsection __jump_table, \"a\"\n\t" \
> > - WORD_INSN " 1b, %l[" #label "], %0\n\t" \
> > - ".popsection\n\t" \
> > - : : "i" (key) : : label); \
> > - } while (0)
> > -
> > +static __always_inline bool arch_static_branch(struct jump_label_key *key)
> > +{
> > + asm goto("1:\tnop\n\t"
> > + "nop\n\t"
> > + ".pushsection __jump_table, \"aw\"\n\t"
> > + WORD_INSN " 1b, %l[l_yes], %0\n\t"
> > + ".popsection\n\t"
> > + : : "i" (key) : : l_yes);
> > + return false;
> > +l_yes:
> > + return true;
> > +}
> >
> > #endif /* __KERNEL__ */
> >
> > diff --git a/arch/mips/kernel/jump_label.c b/arch/mips/kernel/jump_label.c
> > index 6001610..09ac7ca 100644
> > --- a/arch/mips/kernel/jump_label.c
> > +++ b/arch/mips/kernel/jump_label.c
> > @@ -6,11 +6,11 @@
> > * Copyright (c) 2010 Cavium Networks, Inc.
> > */
> >
> > -#include <linux/jump_label.h>
> > #include <linux/kernel.h>
> > #include <linux/memory.h>
> > #include <linux/mutex.h>
> > #include <linux/types.h>
> > +#include <linux/jump_label.h>
> > #include <linux/cpu.h>
> >
> > #include <asm/cacheflush.h>
>
> Hi Ralf,
>
> Can I get your Acked-by on this patch.

You could have gotten it quicker if I had been on cc ...

I'm happy with the change to arch/mips/include/asm/jump_label.h and
assuming that the change to arch/mips/kernel/jump_label.c will be dropped

Acked-by: Ralf Baechle <ralf@linux-mips.org>

Ralf


\
 
 \ /
  Last update: 2011-03-11 03:09    [W:0.093 / U:0.356 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site