mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Will Deacon <will.deacon@arm.com>
To: Jiang Liu <liuj97@gmail.com>
Cc: Steven Rostedt <rostedt@goodmis.org>,
	Catalin Marinas <Catalin.Marinas@arm.com>,
	Sandeepa Prabhu <sandeepa.prabhu@linaro.org>,
	AKASHI Takahiro <takahiro.akashi@linaro.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Hannes Frederic Sowa <hannes@stressinduktion.org>,
	Andrew Jones <drjones@redhat.com>,
	"David S. Miller" <davem@davemloft.net>,
	Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org" 
	<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v6 7/7] jump_label: use defined macros instead of hard-coding for better readability
Date: Fri, 13 Dec 2013 16:00:41 +0000	[thread overview]
Message-ID: <20131213160041.GK19177@mudshark.cambridge.arm.com> (raw)
In-Reply-To: <1386691433-6827-8-git-send-email-liuj97@gmail.com>

On Tue, Dec 10, 2013 at 04:03:53PM +0000, Jiang Liu wrote:
> Use macro JUMP_LABEL_TRUE_BRANCH instead of hard-coding for better
> readability.
> 
> Signed-off-by: Jiang Liu <liuj97@gmail.com>
> ---
>  include/linux/jump_label.h | 15 ++++++++++-----
>  1 file changed, 10 insertions(+), 5 deletions(-)

Whilst this looks alright to me, I think we probably need an ack from Steve
in order to take changes to the core code.

Will


> diff --git a/include/linux/jump_label.h b/include/linux/jump_label.h
> index 3999977..192ccba 100644
> --- a/include/linux/jump_label.h
> +++ b/include/linux/jump_label.h
> @@ -81,18 +81,21 @@ struct module;
>  #include <linux/atomic.h>
>  #ifdef HAVE_JUMP_LABEL
>  
> -#define JUMP_LABEL_TRUE_BRANCH 1UL
> +#define JUMP_LABEL_TYPE_FALSE_BRANCH	0UL
> +#define JUMP_LABEL_TYPE_TRUE_BRANCH	1UL
> +#define JUMP_LABEL_TYPE_MASK		1UL
>  
>  static
>  inline struct jump_entry *jump_label_get_entries(struct static_key *key)
>  {
>  	return (struct jump_entry *)((unsigned long)key->entries
> -						& ~JUMP_LABEL_TRUE_BRANCH);
> +						& ~JUMP_LABEL_TYPE_MASK);
>  }
>  
>  static inline bool jump_label_get_branch_default(struct static_key *key)
>  {
> -	if ((unsigned long)key->entries & JUMP_LABEL_TRUE_BRANCH)
> +	if (((unsigned long)key->entries & JUMP_LABEL_TYPE_MASK) ==
> +	    JUMP_LABEL_TYPE_TRUE_BRANCH)
>  		return true;
>  	return false;
>  }
> @@ -123,9 +126,11 @@ extern void static_key_slow_dec(struct static_key *key);
>  extern void jump_label_apply_nops(struct module *mod);
>  
>  #define STATIC_KEY_INIT_TRUE ((struct static_key) \
> -	{ .enabled = ATOMIC_INIT(1), .entries = (void *)1 })
> +	{ .enabled = ATOMIC_INIT(1), \
> +	  .entries = (void *)JUMP_LABEL_TYPE_TRUE_BRANCH })
>  #define STATIC_KEY_INIT_FALSE ((struct static_key) \
> -	{ .enabled = ATOMIC_INIT(0), .entries = (void *)0 })
> +	{ .enabled = ATOMIC_INIT(0), \
> +	  .entries = (void *)JUMP_LABEL_TYPE_FALSE_BRANCH })
>  
>  #else  /* !HAVE_JUMP_LABEL */
>  
> -- 
> 1.8.1.2
> 
> 

  reply	other threads:[~2013-12-13 16:01 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-12-10 16:03 [PATCH v6 0/7] Optimize jump label implementation for ARM64 Jiang Liu
2013-12-10 16:03 ` [PATCH v6 1/7] arm64: introduce basic aarch64 instruction decoding helpers Jiang Liu
2013-12-10 16:03 ` [PATCH v6 2/7] arm64: introduce interfaces to hotpatch kernel and module code Jiang Liu
2013-12-13 15:54   ` Will Deacon
2013-12-10 16:03 ` [PATCH v6 3/7] arm64: move encode_insn_immediate() from module.c to insn.c Jiang Liu
2013-12-10 16:03 ` [PATCH v6 4/7] arm64: introduce aarch64_insn_gen_{nop|branch_imm}() helper functions Jiang Liu
2013-12-13 15:58   ` Will Deacon
2013-12-10 16:03 ` [PATCH v6 5/7] arm64, jump label: detect %c support for ARM64 Jiang Liu
2013-12-10 16:03 ` [PATCH v6 6/7] arm64, jump label: optimize jump label implementation Jiang Liu
2013-12-13 15:41   ` Will Deacon
2013-12-13 15:50     ` Steven Rostedt
2013-12-13 15:52       ` Steven Rostedt
2013-12-15 11:07         ` Jiang Liu
2013-12-13 15:55       ` Will Deacon
2013-12-15 11:07     ` Jiang Liu
2013-12-10 16:03 ` [PATCH v6 7/7] jump_label: use defined macros instead of hard-coding for better readability Jiang Liu
2013-12-13 16:00   ` Will Deacon [this message]
2013-12-13 16:11     ` Steven Rostedt
2013-12-13 16:20   ` Steven Rostedt
2013-12-15 11:10     ` Jiang Liu
2013-12-18 15:55       ` Jason Baron

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20131213160041.GK19177@mudshark.cambridge.arm.com \
    --to=will.deacon@arm.com \
    --cc=Catalin.Marinas@arm.com \
    --cc=akpm@linux-foundation.org \
    --cc=davem@davemloft.net \
    --cc=drjones@redhat.com \
    --cc=hannes@stressinduktion.org \
    --cc=konrad.wilk@oracle.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=liuj97@gmail.com \
    --cc=rostedt@goodmis.org \
    --cc=sandeepa.prabhu@linaro.org \
    --cc=takahiro.akashi@linaro.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®