2022-03-03 12:30:21

by Muhammad Usama Anjum

[permalink] [raw]
Subject: [PATCH] selftests/interpreter: fix separate directory build

Separate directory build fails of this test as headers include path isn't
set correctly in that case. Fix it by including KHDR_INCLUDES.

make -C tools/testing/selftests O=build1
gcc -Wall -O2 -I../../../../usr/include trust_policy_test.c -lcap -o /linux_mainline/build1/kselftest/interpreter/trust_policy_test
trust_policy_test.c:14:10: fatal error: linux/trusted-for.h: No such file or directory
14 | #include <linux/trusted-for.h>
| ^~~~~~~~~~~~~~~~~~~~~
compilation terminated.

Signed-off-by: Muhammad Usama Anjum <[email protected]>
---
tools/testing/selftests/interpreter/Makefile | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/interpreter/Makefile b/tools/testing/selftests/interpreter/Makefile
index 7402fdb6533f..51dde8e01e32 100644
--- a/tools/testing/selftests/interpreter/Makefile
+++ b/tools/testing/selftests/interpreter/Makefile
@@ -1,6 +1,6 @@
# SPDX-License-Identifier: GPL-2.0

-CFLAGS += -Wall -O2 -I$(khdr_dir)
+CFLAGS += -Wall -O2 -I$(khdr_dir) $(KHDR_INCLUDES)
LDLIBS += -lcap

src_test := $(wildcard *_test.c)
--
2.30.2


2022-03-04 03:42:36

by Shuah Khan

[permalink] [raw]
Subject: Re: [PATCH] selftests/interpreter: fix separate directory build

On 3/3/22 4:06 AM, Muhammad Usama Anjum wrote:
> Separate directory build fails of this test as headers include path isn't
> set correctly in that case. Fix it by including KHDR_INCLUDES.
>
> make -C tools/testing/selftests O=build1
> gcc -Wall -O2 -I../../../../usr/include trust_policy_test.c -lcap -o /linux_mainline/build1/kselftest/interpreter/trust_policy_test
> trust_policy_test.c:14:10: fatal error: linux/trusted-for.h: No such file or directory
> 14 | #include <linux/trusted-for.h>
> | ^~~~~~~~~~~~~~~~~~~~~
> compilation terminated.
>
> Signed-off-by: Muhammad Usama Anjum <[email protected]>
> ---
> tools/testing/selftests/interpreter/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/testing/selftests/interpreter/Makefile b/tools/testing/selftests/interpreter/Makefile
> index 7402fdb6533f..51dde8e01e32 100644
> --- a/tools/testing/selftests/interpreter/Makefile
> +++ b/tools/testing/selftests/interpreter/Makefile
> @@ -1,6 +1,6 @@
> # SPDX-License-Identifier: GPL-2.0
>
> -CFLAGS += -Wall -O2 -I$(khdr_dir)
> +CFLAGS += -Wall -O2 -I$(khdr_dir) $(KHDR_INCLUDES)
> LDLIBS += -lcap
>

Change looks fine to me.

> src_test := $(wildcard *_test.c)
>

I am not seeing this test in linux-kselftest next for sure. Which tree is
this patch based on? Please add the repo info to the patch subject line
in the future.

Either way I don't have the patch that added in liunx-kselftest repo:

Reviewed-by: Shuah Khan <[email protected]>

thanks,
-- Shuah

2022-03-04 08:13:29

by Muhammad Usama Anjum

[permalink] [raw]
Subject: Re: [PATCH] selftests/interpreter: fix separate directory build

On 3/4/22 2:39 AM, Shuah Khan wrote:
> On 3/3/22 4:06 AM, Muhammad Usama Anjum wrote:
>> Separate directory build fails of this test as headers include path isn't
>> set correctly in that case. Fix it by including KHDR_INCLUDES.
>>
>> make -C tools/testing/selftests O=build1
>> gcc -Wall -O2 -I../../../../usr/include    trust_policy_test.c -lcap
>> -o /linux_mainline/build1/kselftest/interpreter/trust_policy_test
>> trust_policy_test.c:14:10: fatal error: linux/trusted-for.h: No such
>> file or directory
>>     14 | #include <linux/trusted-for.h>
>>        |          ^~~~~~~~~~~~~~~~~~~~~
>> compilation terminated.
>>
>> Signed-off-by: Muhammad Usama Anjum <[email protected]>
>> ---
>>   tools/testing/selftests/interpreter/Makefile | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/tools/testing/selftests/interpreter/Makefile
>> b/tools/testing/selftests/interpreter/Makefile
>> index 7402fdb6533f..51dde8e01e32 100644
>> --- a/tools/testing/selftests/interpreter/Makefile
>> +++ b/tools/testing/selftests/interpreter/Makefile
>> @@ -1,6 +1,6 @@
>>   # SPDX-License-Identifier: GPL-2.0
>>   -CFLAGS += -Wall -O2 -I$(khdr_dir)
>> +CFLAGS += -Wall -O2 -I$(khdr_dir) $(KHDR_INCLUDES)
>>   LDLIBS += -lcap
>>  
>
> Change looks fine to me.
>
>>   src_test := $(wildcard *_test.c)
>>
>
> I am not seeing this test in linux-kselftest next for sure. Which tree is
> this patch based on? Please  add the repo info to the patch subject line
> in the future.
>
This patch is in linux-next and its build is failing from quite some time:
https://storage.staging.kernelci.org/kernelci/staging-next/staging-next-20220301.0/x86_64/x86_64_defconfig+x86-chromebook+kselftest/gcc-10/logs/kselftest.log

I'm not sure in which tree selftests/interpreter is present. It was sent
here:
https://lore.kernel.org/lkml/[email protected]/

How can I find the tree from which this patch is coming?

> Either way I don't have the patch that added in liunx-kselftest repo:
>
> Reviewed-by: Shuah Khan <[email protected]>
>
> thanks,
> -- Shuah

I forgot to add the tag:
Reported-by: "kernelci.org bot" <[email protected]>

--
Muhammad Usama Anjum

2022-03-04 16:05:05

by Mickaël Salaün

[permalink] [raw]
Subject: Re: [PATCH] selftests/interpreter: fix separate directory build


On 04/03/2022 08:34, Muhammad Usama Anjum wrote:
> On 3/4/22 2:39 AM, Shuah Khan wrote:
>> On 3/3/22 4:06 AM, Muhammad Usama Anjum wrote:
>>> Separate directory build fails of this test as headers include path isn't
>>> set correctly in that case. Fix it by including KHDR_INCLUDES.
>>>
>>> make -C tools/testing/selftests O=build1
>>> gcc -Wall -O2 -I../../../../usr/include    trust_policy_test.c -lcap
>>> -o /linux_mainline/build1/kselftest/interpreter/trust_policy_test
>>> trust_policy_test.c:14:10: fatal error: linux/trusted-for.h: No such
>>> file or directory
>>>     14 | #include <linux/trusted-for.h>
>>>        |          ^~~~~~~~~~~~~~~~~~~~~
>>> compilation terminated.
>>>
>>> Signed-off-by: Muhammad Usama Anjum <[email protected]>

Reviewed-by: Mickaël Salaün <[email protected]>

>>> ---
>>>   tools/testing/selftests/interpreter/Makefile | 2 +-
>>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/tools/testing/selftests/interpreter/Makefile
>>> b/tools/testing/selftests/interpreter/Makefile
>>> index 7402fdb6533f..51dde8e01e32 100644
>>> --- a/tools/testing/selftests/interpreter/Makefile
>>> +++ b/tools/testing/selftests/interpreter/Makefile
>>> @@ -1,6 +1,6 @@
>>>   # SPDX-License-Identifier: GPL-2.0
>>>   -CFLAGS += -Wall -O2 -I$(khdr_dir)
>>> +CFLAGS += -Wall -O2 -I$(khdr_dir) $(KHDR_INCLUDES)
>>>   LDLIBS += -lcap
>>>
>>
>> Change looks fine to me.
>>
>>>   src_test := $(wildcard *_test.c)
>>>
>>
>> I am not seeing this test in linux-kselftest next for sure. Which tree is
>> this patch based on? Please  add the repo info to the patch subject line
>> in the future.
>>
> This patch is in linux-next and its build is failing from quite some time:
> https://storage.staging.kernelci.org/kernelci/staging-next/staging-next-20220301.0/x86_64/x86_64_defconfig+x86-chromebook+kselftest/gcc-10/logs/kselftest.log
>
> I'm not sure in which tree selftests/interpreter is present. It was sent
> here:
> https://lore.kernel.org/lkml/[email protected]/
>
> How can I find the tree from which this patch is coming?

As explained in the cover letter, it is now in my tree. To get the list
of people to contact (and Cc) you should use ./script/get_maintainer.pl
The KHDR_INCLUDES series [1] was merged after the selftests/interpreter
commits, hence the confusion with these two forks. Because make doesn't
care about unknown variables, and to get a consistent series, I'll apply
this patch just after the selftests/interpreter one. Thanks!

[1]
https://lore.kernel.org/all/[email protected]/


>
>> Either way I don't have the patch that added in liunx-kselftest repo:
>>
>> Reviewed-by: Shuah Khan <[email protected]>
>>
>> thanks,
>> -- Shuah
>
> I forgot to add the tag:
> Reported-by: "kernelci.org bot" <[email protected]>
>
> --
> Muhammad Usama Anjum