All of lore.kernel.org
 help / color / mirror / Atom feed
From: Steven Rostedt <rostedt@goodmis.org>
To: linux-kernel@vger.kernel.org
Cc: Ingo Molnar <mingo@kernel.org>,
	Andrew Morton <akpm@linux-foundation.org>,
	Jason Baron <jbaron@akamai.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>
Subject: [for-next][PATCH 4/7] jump_label: Fix anonymous union initialization
Date: Fri, 03 Mar 2017 09:47:07 -0500	[thread overview]
Message-ID: <20170303144729.982996453@goodmis.org> (raw)
In-Reply-To: 20170303144703.437052140@goodmis.org

[-- Attachment #1: 0004-jump_label-Fix-anonymous-union-initialization.patch --]
[-- Type: text/plain, Size: 1450 bytes --]

From: Boris Ostrovsky <boris.ostrovsky@oracle.com>

Pre-4.6 gcc do not allow direct static initialization of members of
anonymous structs/unions. After commit 3821fd35b58d ("jump_label:
Reduce the size of struct static_key") STATIC_KEY_INIT_{TRUE|FALSE}
definitions cannot be compiled with those older compilers.

Placing initializers inside curved brackets works around this problem.

Link: http://lkml.kernel.org/r/1488299542-30765-1-git-send-email-boris.ostrovsky@oracle.com

Fixes: 3821fd35b58d ("jump_label: Reduce the size of struct static_key")
Reviewed-by: Jason Baron <jbaron@akamai.com>
Compiled-by: Chris Mason <clm@fb.com>
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
 include/linux/jump_label.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/include/linux/jump_label.h b/include/linux/jump_label.h
index 680c98b2f41c..a7f90117cf7d 100644
--- a/include/linux/jump_label.h
+++ b/include/linux/jump_label.h
@@ -166,10 +166,10 @@ extern void static_key_disable(struct static_key *key);
  */
 #define STATIC_KEY_INIT_TRUE					\
 	{ .enabled = { 1 },					\
-	  .entries = (void *)JUMP_TYPE_TRUE }
+	  { .entries = (void *)JUMP_TYPE_TRUE } }
 #define STATIC_KEY_INIT_FALSE					\
 	{ .enabled = { 0 },					\
-	  .entries = (void *)JUMP_TYPE_FALSE }
+	  { .entries = (void *)JUMP_TYPE_FALSE } }
 
 #else  /* !HAVE_JUMP_LABEL */
 
-- 
2.10.2

  parent reply	other threads:[~2017-03-03 14:47 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-03 14:47 [for-next][PATCH 0/7] tracing: Fixes for 4.11 Steven Rostedt
2017-03-03 14:47 ` [for-next][PATCH 1/7] tracing: Fix code comment for ftrace_ops_get_func() Steven Rostedt
2017-03-03 14:47 ` [for-next][PATCH 2/7] ftrace/graph: Do not modify the EMPTY_HASH for the function_graph filter Steven Rostedt
2017-03-03 14:47 ` [for-next][PATCH 3/7] module: set __jump_table alignment to 8 Steven Rostedt
2017-03-03 14:47 ` Steven Rostedt [this message]
2017-03-03 14:47 ` [for-next][PATCH 5/7] jump_label: Add comment about initialization order for anonymous unions Steven Rostedt
2017-03-03 14:47 ` [for-next][PATCH 6/7] tracing: Add #undef to fix compile error Steven Rostedt
2017-03-03 14:47 ` [for-next][PATCH 7/7] ftrace/graph: Add ftrace_graph_max_depth kernel parameter Steven Rostedt

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=20170303144729.982996453@goodmis.org \
    --to=rostedt@goodmis.org \
    --cc=akpm@linux-foundation.org \
    --cc=boris.ostrovsky@oracle.com \
    --cc=jbaron@akamai.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.