This patch adds support for VDUSE_SET_STATUS event
handling, which consists in updating the Virtio device
status set by the Virtio driver.

Signed-off-by: Maxime Coquelin <maxime.coque...@redhat.com>
Reviewed-by: Chenbo Xia <chenbo....@intel.com>
---
 lib/vhost/vduse.c | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/lib/vhost/vduse.c b/lib/vhost/vduse.c
index 7e36c50b6c..3bf65d4b8b 100644
--- a/lib/vhost/vduse.c
+++ b/lib/vhost/vduse.c
@@ -173,6 +173,12 @@ vduse_events_handler(int fd, void *arg, int *remove 
__rte_unused)
                resp.vq_state.split.avail_index = vq->last_avail_idx;
                resp.result = VDUSE_REQ_RESULT_OK;
                break;
+       case VDUSE_SET_STATUS:
+               VHOST_LOG_CONFIG(dev->ifname, INFO, "\tnew status: 0x%08x\n",
+                               req.s.status);
+               dev->status = req.s.status;
+               resp.result = VDUSE_REQ_RESULT_OK;
+               break;
        default:
                resp.result = VDUSE_REQ_RESULT_FAILED;
                break;
-- 
2.40.1

Reply via email to