Re: [PATCH] docs: vhost-user: add Virtio status protocol feature
On 6/18/20 2:50 PM, Jason Wang wrote: > > On 2020/6/18 下午7:29, Maxime Coquelin wrote: >> This patch specifies the VHOST_USER_SET_STATUS and >> VHOST_USER_GET_STATUS requests, which are sent by >> the master to update and query the Virtio status >> in the backend. >> >> Signed-off-by: Maxime Coquelin >> --- >> >> Changes since v1: >> = >> - Only keep the spec part in this patch, the implementation will >> be part of Cindy's Vhost vDPA series it depends on. The goal is >> to be able to implement it in next DPDK release even if Qemu part >> is not merged. >> - Add GET_STATUS after discussions with Michael and Jason. It can >> be used by the master to ensure FEATURES_OK bit set is >> acknowledged by the backend. >> >> docs/interop/vhost-user.rst | 24 >> 1 file changed, 24 insertions(+) >> >> diff --git a/docs/interop/vhost-user.rst b/docs/interop/vhost-user.rst >> index 688b7c6900..866d7c2fb7 100644 >> --- a/docs/interop/vhost-user.rst >> +++ b/docs/interop/vhost-user.rst >> @@ -816,6 +816,7 @@ Protocol features >> #define VHOST_USER_PROTOCOL_F_RESET_DEVICE 13 >> #define VHOST_USER_PROTOCOL_F_INBAND_NOTIFICATIONS 14 >> #define VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS 15 >> + define VHOST_USER_PROTOCOL_F_STATUS 16 > > > Miss a '#"? Indeed, I will fix that. Thanks, Maxime > Other looks good. > > Thanks > > >> Master message types >> >> @@ -1307,6 +1308,29 @@ Master message types >> ``VHOST_USER_ADD_MEM_REG`` message, this message is used to set and >> update the memory tables of the slave device. >> +``VHOST_USER_SET_STATUS`` >> + :id: 39 >> + :equivalent ioctl: VHOST_VDPA_SET_STATUS >> + :slave payload: N/A >> + :master payload: ``u64`` >> + >> + When the ``VHOST_USER_PROTOCOL_F_STATUS`` protocol feature has been >> + successfully negotiated, this message is submitted by the master to >> + notify the backend with updated device status as defined in the Virtio >> + specification. >> + >> +``VHOST_USER_GET_STATUS`` >> + :id: 40 >> + :equivalent ioctl: VHOST_VDPA_GET_STATUS >> + :slave payload: ``u64`` >> + :master payload: N/A >> + >> + When the ``VHOST_USER_PROTOCOL_F_STATUS`` protocol feature has been >> + successfully negotiated, this message is submitted by the master to >> + query the backend for its device status as defined in the Virtio >> + specification. >> + >> + >> Slave message types >> --- >>
Re: [PATCH] docs: vhost-user: add Virtio status protocol feature
On 2020/6/18 下午7:29, Maxime Coquelin wrote: This patch specifies the VHOST_USER_SET_STATUS and VHOST_USER_GET_STATUS requests, which are sent by the master to update and query the Virtio status in the backend. Signed-off-by: Maxime Coquelin --- Changes since v1: = - Only keep the spec part in this patch, the implementation will be part of Cindy's Vhost vDPA series it depends on. The goal is to be able to implement it in next DPDK release even if Qemu part is not merged. - Add GET_STATUS after discussions with Michael and Jason. It can be used by the master to ensure FEATURES_OK bit set is acknowledged by the backend. docs/interop/vhost-user.rst | 24 1 file changed, 24 insertions(+) diff --git a/docs/interop/vhost-user.rst b/docs/interop/vhost-user.rst index 688b7c6900..866d7c2fb7 100644 --- a/docs/interop/vhost-user.rst +++ b/docs/interop/vhost-user.rst @@ -816,6 +816,7 @@ Protocol features #define VHOST_USER_PROTOCOL_F_RESET_DEVICE 13 #define VHOST_USER_PROTOCOL_F_INBAND_NOTIFICATIONS 14 #define VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS 15 + define VHOST_USER_PROTOCOL_F_STATUS16 Miss a '#"? Other looks good. Thanks Master message types @@ -1307,6 +1308,29 @@ Master message types ``VHOST_USER_ADD_MEM_REG`` message, this message is used to set and update the memory tables of the slave device. +``VHOST_USER_SET_STATUS`` + :id: 39 + :equivalent ioctl: VHOST_VDPA_SET_STATUS + :slave payload: N/A + :master payload: ``u64`` + + When the ``VHOST_USER_PROTOCOL_F_STATUS`` protocol feature has been + successfully negotiated, this message is submitted by the master to + notify the backend with updated device status as defined in the Virtio + specification. + +``VHOST_USER_GET_STATUS`` + :id: 40 + :equivalent ioctl: VHOST_VDPA_GET_STATUS + :slave payload: ``u64`` + :master payload: N/A + + When the ``VHOST_USER_PROTOCOL_F_STATUS`` protocol feature has been + successfully negotiated, this message is submitted by the master to + query the backend for its device status as defined in the Virtio + specification. + + Slave message types ---
Re: [PATCH] docs: vhost-user: add Virtio status protocol feature
Patchew URL: https://patchew.org/QEMU/20200618112908.130528-1-maxime.coque...@redhat.com/ Hi, This series failed the asan build test. Please find the testing commands and their output below. If you have Docker installed, you can probably reproduce it locally. === TEST SCRIPT BEGIN === #!/bin/bash export ARCH=x86_64 make docker-image-fedora V=1 NETWORK=1 time make docker-test-debug@fedora TARGET_LIST=x86_64-softmmu J=14 NETWORK=1 === TEST SCRIPT END === CC qga/commands.o CC qga/guest-agent-command-state.o CC qga/main.o /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) CC qga/commands-posix.o CC qga/channel-posix.o CC qga/qapi-generated/qga-qapi-types.o --- AR libvhost-user.a GEN docs/interop/qemu-ga-ref.html GEN docs/interop/qemu-ga-ref.txt /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) GEN docs/interop/qemu-ga-ref.7 AS pc-bios/optionrom/linuxboot.o AS pc-bios/optionrom/kvmvapic.o --- SIGNpc-bios/optionrom/pvh.bin LINKqemu-ga LINKqemu-keymap /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKivshmem-client /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKivshmem-server /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKqemu-nbd /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKqemu-storage-daemon LINKqemu-img /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKqemu-io /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKqemu-edid /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKfsdev/virtfs-proxy-helper /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKscsi/qemu-pr-helper /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINKqemu-bridge-helper /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) /usr/bin/ld: /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors_vfork.S.o): warning: common of `__interception::real_vfork' overridden by definition from /usr/lib64/clang/10.0.0/lib/linux/libclang_rt.asan-x86_64.a(asan_interceptors.cpp.o) LINK
[PATCH] docs: vhost-user: add Virtio status protocol feature
This patch specifies the VHOST_USER_SET_STATUS and VHOST_USER_GET_STATUS requests, which are sent by the master to update and query the Virtio status in the backend. Signed-off-by: Maxime Coquelin --- Changes since v1: = - Only keep the spec part in this patch, the implementation will be part of Cindy's Vhost vDPA series it depends on. The goal is to be able to implement it in next DPDK release even if Qemu part is not merged. - Add GET_STATUS after discussions with Michael and Jason. It can be used by the master to ensure FEATURES_OK bit set is acknowledged by the backend. docs/interop/vhost-user.rst | 24 1 file changed, 24 insertions(+) diff --git a/docs/interop/vhost-user.rst b/docs/interop/vhost-user.rst index 688b7c6900..866d7c2fb7 100644 --- a/docs/interop/vhost-user.rst +++ b/docs/interop/vhost-user.rst @@ -816,6 +816,7 @@ Protocol features #define VHOST_USER_PROTOCOL_F_RESET_DEVICE 13 #define VHOST_USER_PROTOCOL_F_INBAND_NOTIFICATIONS 14 #define VHOST_USER_PROTOCOL_F_CONFIGURE_MEM_SLOTS 15 + define VHOST_USER_PROTOCOL_F_STATUS16 Master message types @@ -1307,6 +1308,29 @@ Master message types ``VHOST_USER_ADD_MEM_REG`` message, this message is used to set and update the memory tables of the slave device. +``VHOST_USER_SET_STATUS`` + :id: 39 + :equivalent ioctl: VHOST_VDPA_SET_STATUS + :slave payload: N/A + :master payload: ``u64`` + + When the ``VHOST_USER_PROTOCOL_F_STATUS`` protocol feature has been + successfully negotiated, this message is submitted by the master to + notify the backend with updated device status as defined in the Virtio + specification. + +``VHOST_USER_GET_STATUS`` + :id: 40 + :equivalent ioctl: VHOST_VDPA_GET_STATUS + :slave payload: ``u64`` + :master payload: N/A + + When the ``VHOST_USER_PROTOCOL_F_STATUS`` protocol feature has been + successfully negotiated, this message is submitted by the master to + query the backend for its device status as defined in the Virtio + specification. + + Slave message types --- -- 2.26.2