diff options
author | Thanos Makatos <thanos.makatos@nutanix.com> | 2021-02-15 10:00:54 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-02-15 10:00:54 +0000 |
commit | c08ce6363b1d3487f330a542ed5273f5d055d3bc (patch) | |
tree | 77e15194466d17b1b84c464cb08f277ed19a48d4 /lib | |
parent | 3d60fca4d4b4ef100d23f3470a5456aef1b1a68e (diff) | |
download | libvfio-user-c08ce6363b1d3487f330a542ed5273f5d055d3bc.zip libvfio-user-c08ce6363b1d3487f330a542ed5273f5d055d3bc.tar.gz libvfio-user-c08ce6363b1d3487f330a542ed5273f5d055d3bc.tar.bz2 |
ack dirty page commands w/o DMA controller (#334)
need unit tests
Signed-off-by: Thanos Makatos <thanos.makatos@nutanix.com>
Reviewed-by: John Levon <john.levon@nutanix.com>
Diffstat (limited to 'lib')
-rw-r--r-- | lib/libvfio-user.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/lib/libvfio-user.c b/lib/libvfio-user.c index 9b87899..fb94b23 100644 --- a/lib/libvfio-user.c +++ b/lib/libvfio-user.c @@ -843,12 +843,17 @@ exec_command(vfu_ctx_t *vfu_ctx, struct vfio_user_header *hdr, size_t size, case VFIO_USER_DIRTY_PAGES: // FIXME: don't allow migration calls if migration == NULL - ret = handle_dirty_pages(vfu_ctx, cmd_data_size, iovecs, nr_iovecs, - cmd_data); + if (vfu_ctx->dma != NULL) { + ret = handle_dirty_pages(vfu_ctx, cmd_data_size, iovecs, + nr_iovecs, cmd_data); + } else { + ret = 0; + } if (ret >= 0) { *free_iovec_data = false; } break; + default: vfu_log(vfu_ctx, LOG_ERR, "bad command %d", hdr->cmd); ret = -EINVAL; |