Re: [PATCH v2] selftests/gpio: Fix gpio compiling error

From: lizhijian@xxxxxxxxxxx
Date: Wed Sep 29 2021 - 00:17:46 EST


ping


On 03/09/2021 09:22, Li Zhijian wrote:
> [root@iaas-rpma gpio]# make
> gcc gpio-mockup-cdev.c -o /home/lizhijian/linux/tools/testing/selftests/gpio/gpio-mockup-cdev
> gpio-mockup-cdev.c: In function ‘request_line_v2’:
> gpio-mockup-cdev.c:24:30: error: storage size of ‘req’ isn’t known
> 24 | struct gpio_v2_line_request req;
> | ^~~
> gpio-mockup-cdev.c:32:14: error: ‘GPIO_V2_LINE_FLAG_OUTPUT’ undeclared (first use in this function); did you mean ‘GPIOLINE_FLAG_IS_OUT’?
> 32 | if (flags & GPIO_V2_LINE_FLAG_OUTPUT) {
> | ^~~~~~~~~~~~~~~~~~~~~~~~
>
> gpio-mockup-cdev.c includes <linux/gpio.h> which could be provided by
> kernel-headers package, and where it's expected to declare
> GPIO_V2_LINE_FLAG_OUTPUT. However distros or developers will not always
> install the same kernel-header as we are compiling.
>
> So we can tell compiler to search headers from linux tree simply like others,
> such as sched.
>
> CC: Philip Li <philip.li@xxxxxxxxx>
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
> Signed-off-by: Li Zhijian <lizhijian@xxxxxxxxxxxxxx>
>
> ---
> V2: add more details about the fix
> ---
> tools/testing/selftests/gpio/Makefile | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/testing/selftests/gpio/Makefile b/tools/testing/selftests/gpio/Makefile
> index 39f2bbe8dd3d..42ea7d2aa844 100644
> --- a/tools/testing/selftests/gpio/Makefile
> +++ b/tools/testing/selftests/gpio/Makefile
> @@ -3,5 +3,6 @@
> TEST_PROGS := gpio-mockup.sh
> TEST_FILES := gpio-mockup-sysfs.sh
> TEST_GEN_PROGS_EXTENDED := gpio-mockup-cdev
> +CFLAGS += -I../../../../usr/include
>
> include ../lib.mk