[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <ca162322-b97e-4ec1-828e-dad7b09f4735@huawei.com>
Date: Thu, 21 Aug 2025 11:55:03 +0800
From: Qinxin Xia <xiaqinxin@...wei.com>
To: Barry Song <21cnbao@...il.com>
CC: <m.szyprowski@...sung.com>, <robin.murphy@....com>,
<jonathan.cameron@...wei.com>, <prime.zeng@...wei.com>,
<fanghao11@...wei.com>, <linux-kernel@...r.kernel.org>,
<linuxarm@...wei.com>, <yangyicong@...wei.com>
Subject: Re: [PATCH 1/2] tools/dma: move dma_map_benchmark from selftests to
tools/dma
On 2025/8/21 11:39:14, Barry Song <21cnbao@...il.com> wrote:
>> I'm so sorry, there were some mistake,'usr/include' should be placed
>> before 'include' during include :
>> CFLAGS += -I../../usr/include -I../../include
>> After the modification, it'll work.In the next version, I will submit
>> the two patches separately, and put the modification of the file path
>> in MAINTAINERS into this patch. Is there anything else that needs to be
>> modified?
>
> i am still getting same build errors with the below:
>
> tools/dma$ git diff .
> diff --git a/tools/dma/Makefile b/tools/dma/Makefile
> index 841b54896288..c37393a3e937 100644
> --- a/tools/dma/Makefile
> +++ b/tools/dma/Makefile
> @@ -1,7 +1,7 @@
> # SPDX-License-Identifier: GPL-2.0
> bindir ?= /usr/bin
>
> -CFLAGS += -I../../include -I../../usr/include
> +CFLAGS += -I../../usr/include -I../../include
>
> TARGET = dma_map_benchmark
>
>
> make:
>
> cc -I../../usr/include -I../../include dma_map_benchmark.c -o dma_map_benchmark
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:20:33: error: conflicting types for
> ‘fd_set’; have ‘__kernel_fd_set’
> 20 | typedef __kernel_fd_set fd_set;
> | ^~~~~~
> In file included from /usr/include/x86_64-linux-gnu/sys/types.h:179,
> from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/sys/select.h:70:5: note: previous
> declaration of ‘fd_set’ with type ‘fd_set’
> 70 | } fd_set;
> | ^~~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:21:33: error: conflicting types for
> ‘dev_t’; have ‘__kernel_dev_t’ {aka ‘unsigned int’}
> 21 | typedef __kernel_dev_t dev_t;
> | ^~~~~
> In file included from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/sys/types.h:59:17: note: previous
> declaration of ‘dev_t’ with type ‘dev_t’ {aka ‘long unsigned int’}
> 59 | typedef __dev_t dev_t;
> | ^~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:25:33: error: conflicting types for
> ‘nlink_t’; have ‘u32’ {aka ‘unsigned int’}
> 25 | typedef u32 nlink_t;
> | ^~~~~~~
> In file included from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/sys/types.h:74:19: note: previous
> declaration of ‘nlink_t’ with type ‘nlink_t’ {aka ‘long unsigned int’}
> 74 | typedef __nlink_t nlink_t;
> | ^~~~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:31:33: error: conflicting types for
> ‘timer_t’; have ‘__kernel_timer_t’ {aka ‘int’}
> 31 | typedef __kernel_timer_t timer_t;
> | ^~~~~~~
> In file included from /usr/include/x86_64-linux-gnu/sys/types.h:130,
> from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/bits/types/timer_t.h:7:19: note:
> previous declaration of ‘timer_t’ with type ‘timer_t’ {aka ‘void *’}
> 7 | typedef __timer_t timer_t;
> | ^~~~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:52:33: error: conflicting types for
> ‘loff_t’; have ‘__kernel_loff_t’ {aka ‘long long int’}
> 52 | typedef __kernel_loff_t loff_t;
> | ^~~~~~
> In file included from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/sys/types.h:42:18: note: previous
> declaration of ‘loff_t’ with type ‘loff_t’ {aka ‘long int’}
> 42 | typedef __loff_t loff_t;
> | ^~~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:115:33: error: conflicting types for
> ‘u_int64_t’; have ‘u64’ {aka ‘long long unsigned int’}
> 115 | typedef u64 u_int64_t;
> | ^~~~~~~~~
> In file included from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/sys/types.h:161:20: note: previous
> declaration of ‘u_int64_t’ with type ‘u_int64_t’ {aka ‘long unsigned
> int’}
> 161 | typedef __uint64_t u_int64_t;
> | ^~~~~~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:116:33: error: conflicting types for
> ‘int64_t’; have ‘s64’ {aka ‘long long int’}
> 116 | typedef s64 int64_t;
> | ^~~~~~~
> In file included from /usr/include/x86_64-linux-gnu/sys/types.h:155,
> from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/bits/stdint-intn.h:27:19: note: previous
> declaration of ‘int64_t’ with type ‘int64_t’ {aka ‘long int’}
> 27 | typedef __int64_t int64_t;
> | ^~~~~~~
> In file included from dma_map_benchmark.c:13:
> ../../include/linux/types.h:137:13: error: conflicting types for
> ‘blkcnt_t’; have ‘u64’ {aka ‘long long unsigned int’}
> 137 | typedef u64 blkcnt_t;
> | ^~~~~~~~
> In file included from /usr/include/stdlib.h:395,
> from dma_map_benchmark.c:8:
> /usr/include/x86_64-linux-gnu/sys/types.h:192:20: note: previous
> declaration of ‘blkcnt_t’ with type ‘blkcnt_t’ {aka ‘long int’}
> 192 | typedef __blkcnt_t blkcnt_t; /* Type to count number of
> disk blocks. */
> | ^~~~~~~~
>
> Thanks
> Barry
Does usr/include have header files? Did you run make headers_install
before make?
[xiaqinxin@...alhost linux]$ make headers_install
HOSTCC scripts/basic/fixdep
HOSTCC scripts/unifdef
WRAP arch/arm64/include/generated/uapi/asm/socket.h
SYSHDR arch/arm64/include/generated/uapi/asm/unistd_64.h
HDRINST usr/include/asm-generic/mman.h
HDRINST usr/include/asm-generic/stat.h
HDRINST usr/include/asm-generic/ucontext.h
HDRINST usr/include/asm-generic/int-ll64.h
HDRINST usr/include/asm-generic/unistd.h
HDRINST usr/include/asm-generic/kvm_para.h
HDRINST usr/include/asm-generic/types.h
HDRINST usr/include/asm-generic/ipcbuf.h
HDRINST usr/include/asm-generic/termbits-common.h
...
[xiaqinxin@...alhost linux]$ cd tools/dma/
[xiaqinxin@...alhost dma]$ make
cc -I../../usr/include -I../../include dma_map_benchmark.c -o
dma_map_benchmark
My test is ok.
Powered by blists - more mailing lists