On Mon, Aug 05, 2019 at 12:47:19PM +0300, Dmitry V. Levin wrote:
> On Mon, Jul 29, 2019 at 05:35:30PM +0800, kernel test robot wrote:
> > FYI, we noticed the following commit (built with gcc-7):
> > 
> > commit: 201766a20e30f982ccfe36bebfad9602c3ff574a ("ptrace: add 
> > PTRACE_GET_SYSCALL_INFO request")
> > https://kernel.googlesource.com/pub/scm/linux/kernel/git/torvalds/linux.git 
> > master
> > 
> > in testcase: kernel_selftests
> > with following parameters:
> > 
> >     group: kselftests-02
> > 
> > test-description: The kernel contains a set of "self tests" under the 
> > tools/testing/selftests/ directory. These are intended to be small unit 
> > tests to exercise individual code paths in the kernel.
> > test-url: https://www.kernel.org/doc/Documentation/kselftest.txt
> 
> The URL above also says: "Tests are intended to be run after building,
> installing and booting a kernel".
> 
> Please build selftests with installed kernel headers corresponding to the
> installed kernel.
> 
> Alternatively, tools/testing/selftests/lib.mk could be extended
> to include uapi headers from the kernel tree into CPPFLAGS, e.g.
> 
> diff --git a/tools/testing/selftests/lib.mk b/tools/testing/selftests/lib.mk
> index 1c8a1963d03f..b5f4f0fb8eeb 100644
> --- a/tools/testing/selftests/lib.mk
> +++ b/tools/testing/selftests/lib.mk
> @@ -10,6 +10,9 @@ ifeq (0,$(MAKELEVEL))
>  endif
>  selfdir = $(realpath $(dir $(filter %/lib.mk,$(MAKEFILE_LIST))))
>  
> +uapi_dir = $(realpath $(selfdir)/../../../include/uapi)
> +CPPFLAGS += -I$(uapi_dir)
> +
>  # The following are built by lib.mk common compile rules.
>  # TEST_CUSTOM_PROGS should be used by tests that require
>  # custom build rule and prevent common build rule use.

I like this solution, as it's a common problem and it solves it in one
place for all of the selftests.

Reviewed-by: Kees Cook <keesc...@chromium.org>

-- 
Kees Cook

Reply via email to