Message ID | 20240709135051.3152502-1-peng.fan@oss.nxp.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | test/vsock: add install target | expand |
Context | Check | Description |
---|---|---|
netdev/tree_selection | success | Not a local patch |
On Tue, Jul 09, 2024 at 09:50:51PM GMT, Peng Fan (OSS) wrote: >From: Peng Fan <peng.fan@nxp.com> > >Add install target for vsock to make Yocto easy to install the images. > >Signed-off-by: Peng Fan <peng.fan@nxp.com> >--- > tools/testing/vsock/Makefile | 12 ++++++++++++ > 1 file changed, 12 insertions(+) > >diff --git a/tools/testing/vsock/Makefile b/tools/testing/vsock/Makefile >index a7f56a09ca9f..5c8442fa9460 100644 >--- a/tools/testing/vsock/Makefile >+++ b/tools/testing/vsock/Makefile >@@ -8,8 +8,20 @@ vsock_perf: vsock_perf.o msg_zerocopy_common.o > vsock_uring_test: LDLIBS = -luring > vsock_uring_test: control.o util.o vsock_uring_test.o timeout.o msg_zerocopy_common.o > >+VSOCK_INSTALL_PATH ?= $(abspath .) >+# Avoid changing the rest of the logic here and lib.mk. >+INSTALL_PATH := $(VSOCK_INSTALL_PATH) >+ > CFLAGS += -g -O2 -Werror -Wall -I. -I../../include -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE -D_GNU_SOURCE > .PHONY: all test clean > clean: > ${RM} *.o *.d vsock_test vsock_diag_test vsock_perf vsock_uring_test > -include *.d >+ >+install: all >+ @# Ask all targets to install their files >+ mkdir -p $(INSTALL_PATH)/vsock why using the "vsock" subdir? IIUC you were inspired by selftests/Makefile, but it installs under $(INSTALL_PATH)/kselftest/ the scripts used by the main one `run_kselftest.sh`, which is installed in $(INSTALL_PATH instead. So in this case I would install everything in $(INSTALL_PATH). WDYT? >+ install -m 744 vsock_test $(INSTALL_PATH)/vsock/ >+ install -m 744 vsock_perf $(INSTALL_PATH)/vsock/ >+ install -m 744 vsock_diag_test $(INSTALL_PATH)/vsock/ >+ install -m 744 vsock_uring_test $(INSTALL_PATH)/vsock/ Also from selftests/Makefile, what about using the ifdef instead of using $(abspath .) as default place? I mean this: install: all ifdef INSTALL_PATH ... else $(error Error: set INSTALL_PATH to use install) endif Thanks, Stefano
> Subject: Re: [PATCH] test/vsock: add install target > > On Tue, Jul 09, 2024 at 09:50:51PM GMT, Peng Fan (OSS) wrote: > >From: Peng Fan <peng.fan@nxp.com> > > > >Add install target for vsock to make Yocto easy to install the images. > > > >Signed-off-by: Peng Fan <peng.fan@nxp.com> > >--- > > tools/testing/vsock/Makefile | 12 ++++++++++++ > > 1 file changed, 12 insertions(+) > > > >diff --git a/tools/testing/vsock/Makefile > >b/tools/testing/vsock/Makefile index a7f56a09ca9f..5c8442fa9460 > 100644 > >--- a/tools/testing/vsock/Makefile > >+++ b/tools/testing/vsock/Makefile > >@@ -8,8 +8,20 @@ vsock_perf: vsock_perf.o > msg_zerocopy_common.o > > vsock_uring_test: LDLIBS = -luring > > vsock_uring_test: control.o util.o vsock_uring_test.o timeout.o > >msg_zerocopy_common.o > > > >+VSOCK_INSTALL_PATH ?= $(abspath .) > >+# Avoid changing the rest of the logic here and lib.mk. > >+INSTALL_PATH := $(VSOCK_INSTALL_PATH) > >+ > > CFLAGS += -g -O2 -Werror -Wall -I. -I../../include > > -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow > > -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE - > D_GNU_SOURCE > > .PHONY: all test clean > > clean: > > ${RM} *.o *.d vsock_test vsock_diag_test vsock_perf > vsock_uring_test > > -include *.d > >+ > >+install: all > >+ @# Ask all targets to install their files > >+ mkdir -p $(INSTALL_PATH)/vsock > > why using the "vsock" subdir? > > IIUC you were inspired by selftests/Makefile, but it installs under > $(INSTALL_PATH)/kselftest/ the scripts used by the main one > `run_kselftest.sh`, which is installed in $(INSTALL_PATH instead. > So in this case I would install everything in $(INSTALL_PATH). > > WDYT? I agree. > > >+ install -m 744 vsock_test $(INSTALL_PATH)/vsock/ > >+ install -m 744 vsock_perf $(INSTALL_PATH)/vsock/ > >+ install -m 744 vsock_diag_test $(INSTALL_PATH)/vsock/ > >+ install -m 744 vsock_uring_test $(INSTALL_PATH)/vsock/ > > Also from selftests/Makefile, what about using the ifdef instead of > using $(abspath .) as default place? > > I mean this: > > install: all > ifdef INSTALL_PATH > ... > else > $(error Error: set INSTALL_PATH to use install) endif Is the following looks good to you? # Avoid conflict with INSTALL_PATH set by the main Makefile VSOCK_INSTALL_PATH ?= INSTALL_PATH := $(VSOCK_INSTALL_PATH) install: all ifdef INSTALL_PATH mkdir -p $(INSTALL_PATH) install -m 744 vsock_test $(INSTALL_PATH) install -m 744 vsock_perf $(INSTALL_PATH) install -m 744 vsock_diag_test $(INSTALL_PATH) install -m 744 vsock_uring_test $(INSTALL_PATH) else $(error Error: set INSTALL_PATH to use install) Endif Thanks, Peng. > > Thanks, > Stefano
On Wed, Jul 10, 2024 at 08:11:32AM GMT, Peng Fan wrote: >> Subject: Re: [PATCH] test/vsock: add install target >> >> On Tue, Jul 09, 2024 at 09:50:51PM GMT, Peng Fan (OSS) wrote: >> >From: Peng Fan <peng.fan@nxp.com> >> > >> >Add install target for vsock to make Yocto easy to install the images. >> > >> >Signed-off-by: Peng Fan <peng.fan@nxp.com> >> >--- >> > tools/testing/vsock/Makefile | 12 ++++++++++++ >> > 1 file changed, 12 insertions(+) >> > >> >diff --git a/tools/testing/vsock/Makefile >> >b/tools/testing/vsock/Makefile index a7f56a09ca9f..5c8442fa9460 >> 100644 >> >--- a/tools/testing/vsock/Makefile >> >+++ b/tools/testing/vsock/Makefile >> >@@ -8,8 +8,20 @@ vsock_perf: vsock_perf.o >> msg_zerocopy_common.o >> > vsock_uring_test: LDLIBS = -luring >> > vsock_uring_test: control.o util.o vsock_uring_test.o timeout.o >> >msg_zerocopy_common.o >> > >> >+VSOCK_INSTALL_PATH ?= $(abspath .) >> >+# Avoid changing the rest of the logic here and lib.mk. >> >+INSTALL_PATH := $(VSOCK_INSTALL_PATH) >> >+ >> > CFLAGS += -g -O2 -Werror -Wall -I. -I../../include >> > -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow >> > -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE - >> D_GNU_SOURCE >> > .PHONY: all test clean >> > clean: >> > ${RM} *.o *.d vsock_test vsock_diag_test vsock_perf >> vsock_uring_test >> > -include *.d >> >+ >> >+install: all >> >+ @# Ask all targets to install their files >> >+ mkdir -p $(INSTALL_PATH)/vsock >> >> why using the "vsock" subdir? >> >> IIUC you were inspired by selftests/Makefile, but it installs under >> $(INSTALL_PATH)/kselftest/ the scripts used by the main one >> `run_kselftest.sh`, which is installed in $(INSTALL_PATH instead. >> So in this case I would install everything in $(INSTALL_PATH). >> >> WDYT? > >I agree. > >> >> >+ install -m 744 vsock_test $(INSTALL_PATH)/vsock/ >> >+ install -m 744 vsock_perf $(INSTALL_PATH)/vsock/ >> >+ install -m 744 vsock_diag_test $(INSTALL_PATH)/vsock/ >> >+ install -m 744 vsock_uring_test $(INSTALL_PATH)/vsock/ >> >> Also from selftests/Makefile, what about using the ifdef instead of >> using $(abspath .) as default place? >> >> I mean this: >> >> install: all >> ifdef INSTALL_PATH >> ... >> else >> $(error Error: set INSTALL_PATH to use install) endif > >Is the following looks good to you? > ># Avoid conflict with INSTALL_PATH set by the main Makefile >VSOCK_INSTALL_PATH ?= >INSTALL_PATH := $(VSOCK_INSTALL_PATH) I'm not a super Makefile expert, but why do we need both VSOCK_INSTALL_PATH and INSTALL_PATH? Stefano > >install: all >ifdef INSTALL_PATH > mkdir -p $(INSTALL_PATH) > install -m 744 vsock_test $(INSTALL_PATH) > install -m 744 vsock_perf $(INSTALL_PATH) > install -m 744 vsock_diag_test $(INSTALL_PATH) > install -m 744 vsock_uring_test $(INSTALL_PATH) >else > $(error Error: set INSTALL_PATH to use install) >Endif > >Thanks, >Peng. >> >> Thanks, >> Stefano >
> Subject: Re: [PATCH] test/vsock: add install target > > On Wed, Jul 10, 2024 at 08:11:32AM GMT, Peng Fan wrote: > >> Subject: Re: [PATCH] test/vsock: add install target > >> > >> On Tue, Jul 09, 2024 at 09:50:51PM GMT, Peng Fan (OSS) wrote: > >> >From: Peng Fan <peng.fan@nxp.com> > >> > > >> >Add install target for vsock to make Yocto easy to install the > images. > >> > > >> >Signed-off-by: Peng Fan <peng.fan@nxp.com> > >> >--- > >> > tools/testing/vsock/Makefile | 12 ++++++++++++ > >> > 1 file changed, 12 insertions(+) > >> > > >> >diff --git a/tools/testing/vsock/Makefile > >> >b/tools/testing/vsock/Makefile index a7f56a09ca9f..5c8442fa9460 > >> 100644 > >> >--- a/tools/testing/vsock/Makefile > >> >+++ b/tools/testing/vsock/Makefile > >> >@@ -8,8 +8,20 @@ vsock_perf: vsock_perf.o > >> msg_zerocopy_common.o > >> > vsock_uring_test: LDLIBS = -luring > >> > vsock_uring_test: control.o util.o vsock_uring_test.o timeout.o > >> >msg_zerocopy_common.o > >> > > >> >+VSOCK_INSTALL_PATH ?= $(abspath .) > >> >+# Avoid changing the rest of the logic here and lib.mk. > >> >+INSTALL_PATH := $(VSOCK_INSTALL_PATH) > >> >+ > >> > CFLAGS += -g -O2 -Werror -Wall -I. -I../../include > >> > -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow > >> > -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE - > >> D_GNU_SOURCE > >> > .PHONY: all test clean > >> > clean: > >> > ${RM} *.o *.d vsock_test vsock_diag_test vsock_perf > >> vsock_uring_test > >> > -include *.d > >> >+ > >> >+install: all > >> >+ @# Ask all targets to install their files > >> >+ mkdir -p $(INSTALL_PATH)/vsock > >> > >> why using the "vsock" subdir? > >> > >> IIUC you were inspired by selftests/Makefile, but it installs under > >> $(INSTALL_PATH)/kselftest/ the scripts used by the main one > >> `run_kselftest.sh`, which is installed in $(INSTALL_PATH instead. > >> So in this case I would install everything in $(INSTALL_PATH). > >> > >> WDYT? > > > >I agree. > > > >> > >> >+ install -m 744 vsock_test $(INSTALL_PATH)/vsock/ > >> >+ install -m 744 vsock_perf $(INSTALL_PATH)/vsock/ > >> >+ install -m 744 vsock_diag_test $(INSTALL_PATH)/vsock/ > >> >+ install -m 744 vsock_uring_test $(INSTALL_PATH)/vsock/ > >> > >> Also from selftests/Makefile, what about using the ifdef instead of > >> using $(abspath .) as default place? > >> > >> I mean this: > >> > >> install: all > >> ifdef INSTALL_PATH > >> ... > >> else > >> $(error Error: set INSTALL_PATH to use install) endif > > > >Is the following looks good to you? > > > ># Avoid conflict with INSTALL_PATH set by the main Makefile > >VSOCK_INSTALL_PATH ?= INSTALL_PATH := $(VSOCK_INSTALL_PATH) > > I'm not a super Makefile expert, but why do we need both > VSOCK_INSTALL_PATH and INSTALL_PATH? INSTALL_PATH is exported by kernel root directory makefile. So to user, we need to avoid export INSTALL_PATH here. So I just follow selftests/Makefile using KSFT_INSTALL_PATH Regards, Peng. > > Stefano > > > > >install: all > >ifdef INSTALL_PATH > > mkdir -p $(INSTALL_PATH) > > install -m 744 vsock_test $(INSTALL_PATH) > > install -m 744 vsock_perf $(INSTALL_PATH) > > install -m 744 vsock_diag_test $(INSTALL_PATH) > > install -m 744 vsock_uring_test $(INSTALL_PATH) else > > $(error Error: set INSTALL_PATH to use install) Endif > > > >Thanks, > >Peng. > >> > >> Thanks, > >> Stefano > >
On Wed, Jul 10, 2024 at 11:34:05AM GMT, Peng Fan wrote: >> Subject: Re: [PATCH] test/vsock: add install target >> >> On Wed, Jul 10, 2024 at 08:11:32AM GMT, Peng Fan wrote: >> >> Subject: Re: [PATCH] test/vsock: add install target >> >> >> >> On Tue, Jul 09, 2024 at 09:50:51PM GMT, Peng Fan (OSS) wrote: >> >> >From: Peng Fan <peng.fan@nxp.com> >> >> > >> >> >Add install target for vsock to make Yocto easy to install the >> images. >> >> > >> >> >Signed-off-by: Peng Fan <peng.fan@nxp.com> >> >> >--- >> >> > tools/testing/vsock/Makefile | 12 ++++++++++++ >> >> > 1 file changed, 12 insertions(+) >> >> > >> >> >diff --git a/tools/testing/vsock/Makefile >> >> >b/tools/testing/vsock/Makefile index a7f56a09ca9f..5c8442fa9460 >> >> 100644 >> >> >--- a/tools/testing/vsock/Makefile >> >> >+++ b/tools/testing/vsock/Makefile >> >> >@@ -8,8 +8,20 @@ vsock_perf: vsock_perf.o >> >> msg_zerocopy_common.o >> >> > vsock_uring_test: LDLIBS = -luring >> >> > vsock_uring_test: control.o util.o vsock_uring_test.o timeout.o >> >> >msg_zerocopy_common.o >> >> > >> >> >+VSOCK_INSTALL_PATH ?= $(abspath .) >> >> >+# Avoid changing the rest of the logic here and lib.mk. >> >> >+INSTALL_PATH := $(VSOCK_INSTALL_PATH) >> >> >+ >> >> > CFLAGS += -g -O2 -Werror -Wall -I. -I../../include >> >> > -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow >> >> > -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE - >> >> D_GNU_SOURCE >> >> > .PHONY: all test clean >> >> > clean: >> >> > ${RM} *.o *.d vsock_test vsock_diag_test vsock_perf >> >> vsock_uring_test >> >> > -include *.d >> >> >+ >> >> >+install: all >> >> >+ @# Ask all targets to install their files >> >> >+ mkdir -p $(INSTALL_PATH)/vsock >> >> >> >> why using the "vsock" subdir? >> >> >> >> IIUC you were inspired by selftests/Makefile, but it installs under >> >> $(INSTALL_PATH)/kselftest/ the scripts used by the main one >> >> `run_kselftest.sh`, which is installed in $(INSTALL_PATH instead. >> >> So in this case I would install everything in $(INSTALL_PATH). >> >> >> >> WDYT? >> > >> >I agree. >> > >> >> >> >> >+ install -m 744 vsock_test $(INSTALL_PATH)/vsock/ >> >> >+ install -m 744 vsock_perf $(INSTALL_PATH)/vsock/ >> >> >+ install -m 744 vsock_diag_test $(INSTALL_PATH)/vsock/ >> >> >+ install -m 744 vsock_uring_test $(INSTALL_PATH)/vsock/ >> >> >> >> Also from selftests/Makefile, what about using the ifdef instead of >> >> using $(abspath .) as default place? >> >> >> >> I mean this: >> >> >> >> install: all >> >> ifdef INSTALL_PATH >> >> ... >> >> else >> >> $(error Error: set INSTALL_PATH to use install) endif >> > >> >Is the following looks good to you? >> > >> ># Avoid conflict with INSTALL_PATH set by the main Makefile >> >VSOCK_INSTALL_PATH ?= INSTALL_PATH := $(VSOCK_INSTALL_PATH) >> >> I'm not a super Makefile expert, but why do we need both >> VSOCK_INSTALL_PATH and INSTALL_PATH? > >INSTALL_PATH is exported by kernel root directory makefile. >So to user, we need to avoid export INSTALL_PATH here. >So I just follow selftests/Makefile using KSFT_INSTALL_PATH There is a comment there: # Avoid changing the rest of the logic here and lib.mk. Added by commit 17eac6c2db8b2cdfe33d40229bdda2acd86b304a. IIUC they re-used INSTALL_PATH, just to avoid too many changes in that file and in tools/testing/selftests/lib.mk So, IMHO we should not care about it and only use VSOCK_INSTALL_PATH if you don't want to conflict with INSTALL_PATH. Stefano
On Wed, 10 Jul 2024 13:58:39 +0200 Stefano Garzarella wrote: > There is a comment there: > > # Avoid changing the rest of the logic here and lib.mk. > > Added by commit 17eac6c2db8b2cdfe33d40229bdda2acd86b304a. > > IIUC they re-used INSTALL_PATH, just to avoid too many changes in that > file and in tools/testing/selftests/lib.mk > > So, IMHO we should not care about it and only use VSOCK_INSTALL_PATH if > you don't want to conflict with INSTALL_PATH. Any reason why vsock isn't part of selftests in the first place?
CCing Stefan. On Wed, Jul 10, 2024 at 07:00:59PM GMT, Jakub Kicinski wrote: >On Wed, 10 Jul 2024 13:58:39 +0200 Stefano Garzarella wrote: >> There is a comment there: >> >> # Avoid changing the rest of the logic here and lib.mk. >> >> Added by commit 17eac6c2db8b2cdfe33d40229bdda2acd86b304a. >> >> IIUC they re-used INSTALL_PATH, just to avoid too many changes in that >> file and in tools/testing/selftests/lib.mk >> >> So, IMHO we should not care about it and only use VSOCK_INSTALL_PATH if >> you don't want to conflict with INSTALL_PATH. > >Any reason why vsock isn't part of selftests in the first place? > Usually vsock tests test both the driver (virtio-vsock) in the guest and the device in the host kernel (vhost-vsock). So I usually run the tests in 2 nested VMs to test the latest changes for both the guest and the host. I don't know enough selftests, but do you think it is possible to integrate them? CCing Stefan who is the original author and may remember more reasons about this choice. Thanks, Stefano
On Thu, Jul 11, 2024 at 09:07:04AM +0200, Stefano Garzarella wrote: > CCing Stefan. > > On Wed, Jul 10, 2024 at 07:00:59PM GMT, Jakub Kicinski wrote: > > On Wed, 10 Jul 2024 13:58:39 +0200 Stefano Garzarella wrote: > > > There is a comment there: > > > > > > # Avoid changing the rest of the logic here and lib.mk. > > > > > > Added by commit 17eac6c2db8b2cdfe33d40229bdda2acd86b304a. > > > > > > IIUC they re-used INSTALL_PATH, just to avoid too many changes in that > > > file and in tools/testing/selftests/lib.mk > > > > > > So, IMHO we should not care about it and only use VSOCK_INSTALL_PATH if > > > you don't want to conflict with INSTALL_PATH. > > > > Any reason why vsock isn't part of selftests in the first place? > > > > Usually vsock tests test both the driver (virtio-vsock) in the guest and the > device in the host kernel (vhost-vsock). So I usually run the tests in 2 > nested VMs to test the latest changes for both the guest and the host. > > I don't know enough selftests, but do you think it is possible to integrate > them? > > CCing Stefan who is the original author and may remember more reasons about > this choice. It's probably because of the manual steps in tools/testing/vsock/README: The following prerequisite steps are not automated and must be performed prior to running tests: 1. Build the kernel, make headers_install, and build these tests. 2. Install the kernel and tests on the host. 3. Install the kernel and tests inside the guest. 4. Boot the guest and ensure that the AF_VSOCK transport is enabled. If you want to automate this for QEMU, VMware, and Hyper-V that would be great. It relies on having a guest running under these hypervisors and that's not trivial to automate (plus it involves proprietary software for VMware and Hyper-V that may not be available without additional license agreements and/or payment). Stefan
On Thu, 11 Jul 2024 15:38:01 +0200 Stefan Hajnoczi wrote: > > Usually vsock tests test both the driver (virtio-vsock) in the guest and the > > device in the host kernel (vhost-vsock). So I usually run the tests in 2 > > nested VMs to test the latest changes for both the guest and the host. > > > > I don't know enough selftests, but do you think it is possible to integrate > > them? > > > > CCing Stefan who is the original author and may remember more reasons about > > this choice. > > It's probably because of the manual steps in tools/testing/vsock/README: > > The following prerequisite steps are not automated and must be performed prior > to running tests: > > 1. Build the kernel, make headers_install, and build these tests. > 2. Install the kernel and tests on the host. > 3. Install the kernel and tests inside the guest. > 4. Boot the guest and ensure that the AF_VSOCK transport is enabled. > > If you want to automate this for QEMU, VMware, and Hyper-V that would be > great. It relies on having a guest running under these hypervisors and > that's not trivial to automate (plus it involves proprietary software > for VMware and Hyper-V that may not be available without additional > license agreements and/or payment). Not sure if there's a requirement that full process is automated. Or at least if there is we are already breaking it in networking because for some tests we need user to export some env variables to point the test to the right interfaces and even a remote machine to generate traffic. If the env isn't set up tests return 4 (SKIP). I don't feel strongly that ksft + env approach is better but at least it gives us easy access to the basic build and packaging features from ksft. Up to you but thought I'd ask.
On Thu, Jul 11, 2024 at 07:14:55AM GMT, Jakub Kicinski wrote: >On Thu, 11 Jul 2024 15:38:01 +0200 Stefan Hajnoczi wrote: >> > Usually vsock tests test both the driver (virtio-vsock) in the guest and the >> > device in the host kernel (vhost-vsock). So I usually run the tests in 2 >> > nested VMs to test the latest changes for both the guest and the host. >> > >> > I don't know enough selftests, but do you think it is possible to integrate >> > them? >> > >> > CCing Stefan who is the original author and may remember more reasons about >> > this choice. >> >> It's probably because of the manual steps in tools/testing/vsock/README: >> >> The following prerequisite steps are not automated and must be performed prior >> to running tests: >> >> 1. Build the kernel, make headers_install, and build these tests. >> 2. Install the kernel and tests on the host. >> 3. Install the kernel and tests inside the guest. >> 4. Boot the guest and ensure that the AF_VSOCK transport is enabled. >> >> If you want to automate this for QEMU, VMware, and Hyper-V that would be >> great. It relies on having a guest running under these hypervisors and >> that's not trivial to automate (plus it involves proprietary software >> for VMware and Hyper-V that may not be available without additional >> license agreements and/or payment). > >Not sure if there's a requirement that full process is automated. >Or at least if there is we are already breaking it in networking >because for some tests we need user to export some env variables >to point the test to the right interfaces and even a remote machine >to generate traffic. If the env isn't set up tests return 4 (SKIP). >I don't feel strongly that ksft + env approach is better but at >least it gives us easy access to the basic build and packaging >features from ksft. Up to you but thought I'd ask. > Yeah, I'll try to allocate some cycles to look into that. Tracking it here: https://gitlab.com/vsock/vsock/-/issues/13 What about this patch, can we queue it for now? Thanks, Stefano
diff --git a/tools/testing/vsock/Makefile b/tools/testing/vsock/Makefile index a7f56a09ca9f..5c8442fa9460 100644 --- a/tools/testing/vsock/Makefile +++ b/tools/testing/vsock/Makefile @@ -8,8 +8,20 @@ vsock_perf: vsock_perf.o msg_zerocopy_common.o vsock_uring_test: LDLIBS = -luring vsock_uring_test: control.o util.o vsock_uring_test.o timeout.o msg_zerocopy_common.o +VSOCK_INSTALL_PATH ?= $(abspath .) +# Avoid changing the rest of the logic here and lib.mk. +INSTALL_PATH := $(VSOCK_INSTALL_PATH) + CFLAGS += -g -O2 -Werror -Wall -I. -I../../include -I../../../usr/include -Wno-pointer-sign -fno-strict-overflow -fno-strict-aliasing -fno-common -MMD -U_FORTIFY_SOURCE -D_GNU_SOURCE .PHONY: all test clean clean: ${RM} *.o *.d vsock_test vsock_diag_test vsock_perf vsock_uring_test -include *.d + +install: all + @# Ask all targets to install their files + mkdir -p $(INSTALL_PATH)/vsock + install -m 744 vsock_test $(INSTALL_PATH)/vsock/ + install -m 744 vsock_perf $(INSTALL_PATH)/vsock/ + install -m 744 vsock_diag_test $(INSTALL_PATH)/vsock/ + install -m 744 vsock_uring_test $(INSTALL_PATH)/vsock/