Messages in this thread | | | Date | Tue, 23 May 2017 09:56:08 -0700 | From | Matthias Kaehlcke <> | Subject | Re: [PATCH 1/3] mm/slub: Only define kmalloc_large_node_hook() for NUMA systems |
| |
Hi David,
El Mon, May 22, 2017 at 06:35:23PM -0700 David Rientjes ha dit:
> On Mon, 22 May 2017, Andrew Morton wrote: > > > > > Is clang not inlining kmalloc_large_node_hook() for some reason? I don't > > > > think this should ever warn on gcc. > > > > > > clang warns about unused static inline functions outside of header > > > files, in difference to gcc. > > > > I wish it wouldn't. These patches just add clutter. > > > > Matthias, what breaks if you do this? > > diff --git a/include/linux/compiler-clang.h b/include/linux/compiler-clang.h > index de179993e039..e1895ce6fa1b 100644 > --- a/include/linux/compiler-clang.h > +++ b/include/linux/compiler-clang.h > @@ -15,3 +15,8 @@ > * with any version that can compile the kernel > */ > #define __UNIQUE_ID(prefix) __PASTE(__PASTE(__UNIQUE_ID_, prefix), __COUNTER__) > + > +#ifdef inline > +#undef inline > +#define inline __attribute__((unused)) > +#endif
Thanks for the suggestion!
Nothing breaks and the warnings are silenced. It seems we could use this if there is a stong opposition against having warnings on unused static inline functions in .c files.
Still I am not convinced that gcc's behavior is preferable in this case. True, it saves us from adding a bunch of __maybe_unused or #ifdefs, on the other hand the warning is a useful tool to spot truly unused code. So far about 50% of the warnings I looked into fall into this category.
| |