Messages in this thread | | | From | Nick Desaulniers <> | Date | Tue, 5 Jun 2018 14:51:23 -0700 | Subject | Re: [PATCH v2 2/2] x86: paravirt: make native_save_fl extern inline |
| |
On Tue, Jun 5, 2018 at 2:31 PM Arnd Bergmann <arnd@arndb.de> wrote: > > On Tue, Jun 5, 2018 at 11:28 PM, Arnd Bergmann <arnd@arndb.de> wrote: > > On Tue, Jun 5, 2018 at 7:05 PM, Nick Desaulniers > > <ndesaulniers@google.com> wrote: > >> > >> The semantics of extern inline has changed since gnu89. This means that > >> folks using GCC versions >= 5.1 may see symbol redefinition errors at > >> link time for subdirs that override KBUILD_CFLAGS (making the C standard > >> used implicit) regardless of this patch. This has been cleaned up > >> earlier in the patch set, but is left as a note in the commit message > >> for future travelers. > > > > I think the keyword you are missing is > > > > __attribute__((gnu_inline)) > > > > which forces the gnu89 behavior on all compiler versions. It's been supported > > since gcc-4.2, so it should not cause problems on any compiler that is able > > to build an x86 kernel. > > Nevermind, I just saw you already posted that. > > Arnd
That's ok, I appreciate you taking the time to review. Your point made me consider adding the function attribute to just native_save_fl() in this patch, but it seems that that lone function attribute is not used outside of compiler-gcc.h, so it would be good to change all users of inline in one place. -- Thanks, ~Nick Desaulniers
| |