lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAGsJ_4x1UHW58SjpGcb0vEBdwLPz5gS4i2CFv-eMKs=KObcG8Q@mail.gmail.com>
Date: Thu, 24 Jul 2025 17:25:16 +0800
From: Barry Song <21cnbao@...il.com>
To: Qinxin Xia <xiaqinxin@...wei.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
Subject: Re: [PATCH 1/2] tools/dma: move dma_map_benchmark from selftests to tools/dma

On Thu, Jul 24, 2025 at 4:56 PM Qinxin Xia <xiaqinxin@...wei.com> wrote:
>
> dma_map_benchmark is a standalone developer tool rather than an
> automated selftest.  It has no pass/fail criteria, expects manual
> invocation, and is built as a normal userspace binary.Move it to
> tools/dma/ and add a minimal, the original selftest.Makefile entry
> is removed to avoid duplication.
>
> Signed-off-by: Qinxin Xia <xiaqinxin@...wei.com>
> ---
>  tools/Makefile                                    | 13 +++++++------
>  tools/dma/Makefile                                | 15 +++++++++++++++
>  tools/{testing/selftests => }/dma/config          |  0
>  .../selftests => }/dma/dma_map_benchmark.c        |  0
>  tools/testing/selftests/dma/Makefile              |  7 -------
>  5 files changed, 22 insertions(+), 13 deletions(-)
>  create mode 100644 tools/dma/Makefile
>  rename tools/{testing/selftests => }/dma/config (100%)
>  rename tools/{testing/selftests => }/dma/dma_map_benchmark.c (100%)
>  delete mode 100644 tools/testing/selftests/dma/Makefile
>
> diff --git a/tools/Makefile b/tools/Makefile
> index c31cbbd12c45..72dc0e936632 100644
> --- a/tools/Makefile
> +++ b/tools/Makefile
> @@ -14,6 +14,7 @@ help:
>         @echo '  counter                - counter tools'
>         @echo '  cpupower               - a tool for all things x86 CPU power'
>         @echo '  debugging              - tools for debugging'
> +       @echo '  dma                    - dma map benchmark'

Please make it more general. Right now we only have the DMA map
benchmark, but we might add more DMA mapping tools in the future.
For examples: tools for dma mapping

>         @echo '  firewire               - the userspace part of nosy, an IEEE-1394 traffic sniffer'
>         @echo '  firmware               - Firmware tools'
>         @echo '  freefall               - laptop accelerometer program for disk protection'
> @@ -69,7 +70,7 @@ acpi: FORCE
>  cpupower: FORCE
>         $(call descend,power/$@)
>
> -counter firewire hv guest bootconfig spi usb virtio mm bpf iio gpio objtool leds wmi firmware debugging tracing: FORCE
> +counter dma firewire hv guest bootconfig spi usb virtio mm bpf iio gpio objtool leds wmi firmware debugging tracing: FORCE
>         $(call descend,$@)
>
>  bpf/%: FORCE
> @@ -122,7 +123,7 @@ kvm_stat: FORCE
>  ynl: FORCE
>         $(call descend,net/ynl)
>
> -all: acpi counter cpupower gpio hv firewire \
> +all: acpi counter cpupower dma gpio hv firewire \
>                 perf selftests bootconfig spi turbostat usb \
>                 virtio mm bpf x86_energy_perf_policy \
>                 tmon freefall iio objtool kvm_stat wmi \
> @@ -134,7 +135,7 @@ acpi_install:
>  cpupower_install:
>         $(call descend,power/$(@:_install=),install)
>
> -counter_install firewire_install gpio_install hv_install iio_install perf_install bootconfig_install spi_install usb_install virtio_install mm_install bpf_install objtool_install wmi_install debugging_install tracing_install:
> +counter_install dma_install firewire_install gpio_install hv_install iio_install perf_install bootconfig_install spi_install usb_install virtio_install mm_install bpf_install objtool_install wmi_install debugging_install tracing_install:
>         $(call descend,$(@:_install=),install)
>
>  selftests_install:
> @@ -164,7 +165,7 @@ kvm_stat_install:
>  ynl_install:
>         $(call descend,net/$(@:_install=),install)
>
> -install: acpi_install counter_install cpupower_install gpio_install \
> +install: acpi_install counter_install cpupower_install dma_install gpio_install \
>                 hv_install firewire_install iio_install \
>                 perf_install selftests_install turbostat_install usb_install \
>                 virtio_install mm_install bpf_install x86_energy_perf_policy_install \
> @@ -178,7 +179,7 @@ acpi_clean:
>  cpupower_clean:
>         $(call descend,power/cpupower,clean)
>
> -counter_clean hv_clean firewire_clean bootconfig_clean spi_clean usb_clean virtio_clean mm_clean wmi_clean bpf_clean iio_clean gpio_clean objtool_clean leds_clean firmware_clean debugging_clean tracing_clean:
> +counter_clean dma_clean hv_clean firewire_clean bootconfig_clean spi_clean usb_clean virtio_clean mm_clean wmi_clean bpf_clean iio_clean gpio_clean objtool_clean leds_clean firmware_clean debugging_clean tracing_clean:
>         $(call descend,$(@:_clean=),clean)
>
>  libapi_clean:
> @@ -224,7 +225,7 @@ build_clean:
>  ynl_clean:
>         $(call descend,net/$(@:_clean=),clean)
>
> -clean: acpi_clean counter_clean cpupower_clean hv_clean firewire_clean \
> +clean: acpi_clean counter_clean cpupower_clean dma_clean hv_clean firewire_clean \
>                 perf_clean selftests_clean turbostat_clean bootconfig_clean spi_clean usb_clean virtio_clean \
>                 mm_clean bpf_clean iio_clean x86_energy_perf_policy_clean tmon_clean \
>                 freefall_clean build_clean libbpf_clean libsubcmd_clean \
> diff --git a/tools/dma/Makefile b/tools/dma/Makefile
> new file mode 100644
> index 000000000000..6282eb41e51a
> --- /dev/null
> +++ b/tools/dma/Makefile
> @@ -0,0 +1,15 @@
> +# SPDX-License-Identifier: GPL-2.0
> +bindir ?= /usr/bin
> +
> +CFLAGS += -I../../include -I../../usr/include
> +
> +all:
> +       $(CC) $(CFLAGS) dma_map_benchmark.c -o dma_map_benchmark
> +
> +install: all
> +       install -D dma_map_benchmark $(bindir)/bin/dma_map_benchmark
> +
> +clean:
> +       rm -f dma_map_benchmark

Please make the Makefile more general. Right now I only have
dma_map_benchmark, but the Makefile shouldn't be tailored specifically
for just that one. dma_map_benchmark is one of those targets.

And I feel $(bindir)/bin/dma_map_benchmark is an incorrect folder.

Thanks
Barry

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ