All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnd Bergmann <arnd@arndb.de>
To: Nick Desaulniers <ndesaulniers@google.com>
Cc: Kate Stewart <kstewart@linuxfoundation.org>,
	linux-efi@vger.kernel.org, Brijesh Singh <brijesh.singh@amd.com>,
	Jan Kiszka <jan.kiszka@siemens.com>,
	Josh Poimboeuf <jpoimboe@redhat.com>,
	Will Deacon <will.deacon@arm.com>,
	Jarkko Sakkinen <jarkko.sakkinen@linux.intel.com>,
	virtualization@lists.linux-foundation.org,
	Masahiro Yamada <yamada.masahiro@socionext.com>,
	Manoj Gupta <manojgupta@google.com>,
	"H. Peter Anvin" <hpa@zytor.com>,
	Boris Ostrovsky <boris.ostrovsky@oracle.com>,
	Thiebaud Weksteen <tweek@google.com>,
	mawilcox@microsoft.com, the arch/x86 maintainers <x86@kernel.org>,
	akataria@vmware.com, Greg Hackmann <ghackmann@google.com>,
	Ingo Molnar <mingo@redhat.com>,
	astrachan@google.com, David Rientjes <rientjes@google.com>,
	Geert Uytterhoeven <geert@linux-m68k.org>,
	"Lendacky, Thomas" <thomas.lendacky@amd.com>,
	Linux Kbuild mailing list <linux-kbuild@vger.kernel.org>
Subject: Re: [PATCH v4 1/3] compiler-gcc.h: add gnu_inline to all inline declarations
Date: Fri, 8 Jun 2018 09:59:54 +0200	[thread overview]
Message-ID: <CAK8P3a0yi+MrOS=+pjCeUu==YBE_AppB8vfqdsQS-1NpSO2c4A__17775.1563875519$1528444683$gmane$org@mail.gmail.com> (raw)
In-Reply-To: <20180607204927.219329-2-ndesaulniers@google.com>

On Thu, Jun 7, 2018 at 10:49 PM, Nick Desaulniers
<ndesaulniers@google.com> wrote:
> Functions marked extern inline do not emit an externally visible
> function when the gnu89 C standard is used. Some KBUILD Makefiles
> overwrite KBUILD_CFLAGS. This is an issue for GCC 5.1+ users as without
> an explicit C standard specified, the default is gnu11. Since c99, the
> semantics of extern inline have changed such that an externally visible
> function is always emitted. This can lead to multiple definition errors
> of extern inline functions at link time of compilation units whose build
> files have removed an explicit C standard compiler flag for users of GCC
> 5.1+ or Clang.
>
> Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
> Suggested-by: H. Peter Anvin <hpa@zytor.com>
> Suggested-by: Joe Perches <joe@perches.com>

I suspect this will break Geert's gcc-4.1.2, which I think doesn't have that
attribute yet (4.1.3 or higher have it according to the documentation.

It wouldn't be hard to work around that if we want to keep that version
working, or we could decide that it's time to officially stop supporting
that version, but we should probably decide on one or the other.

        Arnd

  parent reply	other threads:[~2018-06-08  7:59 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-07 20:49 [PATCH v4 0/3] extern inline native_save_fl for paravirt Nick Desaulniers
2018-06-07 20:49 ` Nick Desaulniers
2018-06-07 20:49 ` [PATCH v4 1/3] compiler-gcc.h: add gnu_inline to all inline declarations Nick Desaulniers
2018-06-07 20:49   ` Nick Desaulniers
2018-06-08  7:59   ` Arnd Bergmann
2018-06-08  7:59     ` Arnd Bergmann
2018-06-08 10:04     ` Sedat Dilek
2018-06-08 10:04       ` Sedat Dilek
2018-06-08 11:28       ` Andrea Parri
2018-06-08 11:28         ` Andrea Parri
2018-06-08 12:29         ` Sedat Dilek
2018-06-08 12:29           ` Sedat Dilek
2018-06-12 18:33       ` Nick Desaulniers
2018-06-12 18:33         ` Nick Desaulniers
2018-06-12 18:51         ` H. Peter Anvin
2018-06-12 18:51           ` H. Peter Anvin
2018-06-12 20:19           ` Nick Desaulniers
2018-06-12 20:19             ` Nick Desaulniers
2018-06-12 21:31             ` H. Peter Anvin
2018-06-12 21:31               ` H. Peter Anvin
2018-06-12 21:36               ` Nick Desaulniers
2018-06-12 21:36                 ` Nick Desaulniers
2018-06-08  7:59   ` Arnd Bergmann [this message]
2018-06-07 20:49 ` [PATCH v4 2/3] x86/asm: add _ASM_ARG* constants for argument registers to <asm/asm.h> Nick Desaulniers
2018-06-07 20:49   ` Nick Desaulniers
2018-06-07 20:49 ` [PATCH v4 3/3] x86: paravirt: make native_save_fl extern inline Nick Desaulniers
2018-06-07 20:49   ` Nick Desaulniers

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='CAK8P3a0yi+MrOS=+pjCeUu==YBE_AppB8vfqdsQS-1NpSO2c4A__17775.1563875519$1528444683$gmane$org@mail.gmail.com' \
    --to=arnd@arndb.de \
    --cc=akataria@vmware.com \
    --cc=astrachan@google.com \
    --cc=boris.ostrovsky@oracle.com \
    --cc=brijesh.singh@amd.com \
    --cc=geert@linux-m68k.org \
    --cc=ghackmann@google.com \
    --cc=hpa@zytor.com \
    --cc=jan.kiszka@siemens.com \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=jpoimboe@redhat.com \
    --cc=kstewart@linuxfoundation.org \
    --cc=linux-efi@vger.kernel.org \
    --cc=linux-kbuild@vger.kernel.org \
    --cc=manojgupta@google.com \
    --cc=mawilcox@microsoft.com \
    --cc=mingo@redhat.com \
    --cc=ndesaulniers@google.com \
    --cc=rientjes@google.com \
    --cc=thomas.lendacky@amd.com \
    --cc=tweek@google.com \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=will.deacon@arm.com \
    --cc=x86@kernel.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 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.