On 1/13/23 09:52, Gerd Bayer wrote:
On Thu, 2023-01-12 at 13:36 -0700, Shuah Khan wrote:
On 1/9/23 11:07, Gerd Bayer wrote:
With this change dma_map_benchmark compiles with just the obvious warning about uapi usage on ARCH=x86, arm64, and s390 and runs on ARCH=s390.
On Linux 6.2-rc3, dma_map_benchmark compiles just fine. You do have to do "make headers_install" first as kselftest depends on headers being installed in the repo.
Please let me know if you are seeing compile problems even after installing headers.
thanks, -- Shuah
Hi Shuah,
thank you for this clarification. Once I run "make headers_install" before attempting to build the dma_benchmark_test executable with make -C tools/testing/selftests/ TARGETS="dma" everything works out nicely - even w/o my patch.
I have to apologize for creating this fuzz. I was not aware that one of the dependencies for "make kselftest" was "make headers_install", since I was going straight for the interactive "dma_benchmark_test" control tool of the test that is implemented in kernel/dma/benchmark_test.c. I didn't intend to run the full "make kselftest" suite, primarily since I have distinct test and build systems - most often building cross- arch, even.
No worries. The reason for this dependency is to ensure kselftest can test the kernel properly. Tests for new or enhanced kernel features depend on mew headers. headers_install has been dependency for kselftest from the beginning and some individual tests depend on it.
The main Makefile (make kselftest) enforces the dependency and installs headers first. You can use the following commands to compile/run dma test. This will install the headers and then compile/run dma test.
make kselftest-all TARGETS=dma (compile) make kselftest TARGETS=dma (compile and run)
So please, disregard the PATCH.
Done.
thanks, -- Shuah