public inbox for linux-kbuild@vger.kernel.org
 help / color / mirror / Atom feed
From: Gleb Fotengauer-Malinovskiy <glebfm@altlinux.org>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Masahiro Yamada <yamada.masahiro@socionext.com>,
	David Lin <dtwlin@google.com>,
	"Anton V. Boyarshinov" <boyarsh@altlinux.org>,
	"Dmitry V. Levin" <ldv@altlinux.org>,
	Michal Marek <mmarek@suse.com>,
	linux-kbuild@vger.kernel.org, linux-kernel@vger.kernel.org,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: [PATCH] jump label: fix passing kbuild_cflags when checking for asm goto support
Date: Fri, 10 Mar 2017 20:39:52 +0300	[thread overview]
Message-ID: <20170310173952.GW27556@glebfm.cloud.tilaa.com> (raw)
In-Reply-To: <20170310120422.14e19269@gandalf.local.home>

On Fri, Mar 10, 2017 at 12:04:22PM -0500, Steven Rostedt wrote:
> On Fri, 10 Mar 2017 19:24:18 +0300
> Gleb Fotengauer-Malinovskiy <glebfm@altlinux.org> wrote:
> 
> > The latest change of asm goto support check added passing of
> > KBUILD_CFLAGS to compiler.  When these flags reference gcc plugins,
> > there is a race condition between the build of these plugins and their
> > use in this asm goto support check.
> > 
> > This change moves the check before all these references are added
> > to KBUILD_CFLAGS.  This is correct because subsequent KBUILD_CFLAGS
> > modifications are not relevant to this check.
> 
> What exactly breaks when the race happens?

Actually, this is not quite a race.  When you run "make bzImage" followed
by "make modules", the kernel is always built with HAVE_JUMP_LABEL
disabled, while the modules are built depending on CONFIG_JUMP_LABEL.
If HAVE_JUMP_LABEL macro happens to be different, modules are built
with undefined references:

ERROR: "static_key_slow_inc" [net/netfilter/xt_TEE.ko] undefined!
ERROR: "static_key_slow_dec" [net/netfilter/xt_TEE.ko] undefined!
ERROR: "static_key_slow_dec" [net/netfilter/nft_meta.ko] undefined!
ERROR: "static_key_slow_inc" [net/netfilter/nft_meta.ko] undefined!
ERROR: "nf_hooks_needed" [net/netfilter/ipvs/ip_vs.ko] undefined!
ERROR: "nf_hooks_needed" [net/ipv6/ipv6.ko] undefined!
ERROR: "static_key_count" [net/ipv6/ipv6.ko] undefined!
ERROR: "static_key_slow_inc" [net/ipv6/ipv6.ko] undefined!
ERROR: "nf_hooks_needed" [net/decnet/decnet.ko] undefined!

-- 
glebfm

  reply	other threads:[~2017-03-10 17:41 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-03-10 16:24 [PATCH] jump label: fix passing kbuild_cflags when checking for asm goto support Gleb Fotengauer-Malinovskiy
2017-03-10 17:04 ` Steven Rostedt
2017-03-10 17:39   ` Gleb Fotengauer-Malinovskiy [this message]
2017-03-10 17:42     ` Steven Rostedt
2017-03-10 17:55       ` [PATCH v2] " Gleb Fotengauer-Malinovskiy
2017-03-10 18:04         ` Steven Rostedt
2017-03-10 18:30         ` David Lin
2017-03-20 17:15         ` [PING PATCH " Gleb Fotengauer-Malinovskiy
2017-03-21 17:48           ` Masahiro Yamada
2017-03-21 18:04             ` 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=20170310173952.GW27556@glebfm.cloud.tilaa.com \
    --to=glebfm@altlinux.org \
    --cc=akpm@linux-foundation.org \
    --cc=boyarsh@altlinux.org \
    --cc=dtwlin@google.com \
    --cc=ldv@altlinux.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mmarek@suse.com \
    --cc=rostedt@goodmis.org \
    --cc=yamada.masahiro@socionext.com \
    /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