On Fri, Jul 18, 2025 at 03:03:43PM -0600, Shuah Khan wrote: > On 7/14/25 17:01, Paul E. McKenney wrote: > > The pidfd selftests run in userspace and include both userspace and kernel > > header files. On some distros (for example, CentOS), this results in > > duplicate-symbol warnings in allmodconfig builds, while on other distros > > (for example, Ubuntu) it does not. (This happens in recent -next trees, > > including next-20250714.) > > > > Therefore, use #undef to get rid of the userspace definitions in favor > > of the kernel definitions. > > > > Other ways of handling this include splitting up the selftest code so > > that the userspace definitions go into one translation unit and the > > kernel definitions into another (which might or might not be feasible) > > or to adjust compiler command-line options to suppress the warnings > > (which might or might not be desirable). > > > > Signed-off-by: Paul E. McKenney <paul...@kernel.org> > > Cc: Christian Brauner <brau...@kernel.org> > > Cc: Shuah Khan <sh...@kernel.org> > > Cc: <linux-kselft...@vger.kernel.org> > > > > --- > > pidfd.h | 4 ++++ > > 1 file changed, 4 insertions(+) > > > > diff --git a/tools/testing/selftests/pidfd/pidfd.h > > b/tools/testing/selftests/pidfd/pidfd.h > > index efd74063126eb..6ff495398e872 100644 > > --- a/tools/testing/selftests/pidfd/pidfd.h > > +++ b/tools/testing/selftests/pidfd/pidfd.h > > @@ -16,6 +16,10 @@ > > #include <sys/types.h> > > #include <sys/wait.h> > > Please add comments here about why we are adding this so there > won't be any confusion later.
Good point, thank you! Like this? /* * Remove the userspace definitions of the following preprocessor symbols * to avoid duplicate-definition warnings from the subsequent in-kernel * definitions. */ > > +#undef SCHED_NORMAL > > +#undef SCHED_FLAG_KEEP_ALL > > +#undef SCHED_FLAG_UTIL_CLAMP > > + > > #include "../kselftest.h" > > #include "../clone3/clone3_selftests.h" > > With that change: > > Reviewed-by: Shuah Khan <sk...@linuxfoundation.org> Thank you! > I am assuming this will go through Christian's tree. If not I can > take it through mine. I am of course good either way. ;-) Thanx, Paul