summaryrefslogtreecommitdiffstats
path: root/samples/vfio-mdev
diff options
context:
space:
mode:
authorGerd Hoffmann <kraxel@redhat.com>2018-06-25 02:44:52 -0400
committerAlex Williamson <alex.williamson@redhat.com>2018-06-26 02:27:23 -0400
commit7733e05b34f5d855c5590d816b41ddfee972d188 (patch)
tree392a39c4b933378a88435fd39691a64ead80ca7a /samples/vfio-mdev
parent2203d8a76ea3b962559acfe3bb80eddfdfbc9cee (diff)
sample/mdev/mbochs: add mbochs_kunmap_dmabuf
There is no default implementation for dma_buf_ops->unmap. So add a function unmapping the page, otherwise we'll leak them. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
Diffstat (limited to 'samples/vfio-mdev')
-rw-r--r--samples/vfio-mdev/mbochs.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/samples/vfio-mdev/mbochs.c b/samples/vfio-mdev/mbochs.c
index aa25cda21d22..85ac6037696f 100644
--- a/samples/vfio-mdev/mbochs.c
+++ b/samples/vfio-mdev/mbochs.c
@@ -811,11 +811,18 @@ static void *mbochs_kmap_dmabuf(struct dma_buf *buf, unsigned long page_num)
811 return kmap(page); 811 return kmap(page);
812} 812}
813 813
814static void mbochs_kunmap_dmabuf(struct dma_buf *buf, unsigned long page_num,
815 void *vaddr)
816{
817 kunmap(vaddr);
818}
819
814static struct dma_buf_ops mbochs_dmabuf_ops = { 820static struct dma_buf_ops mbochs_dmabuf_ops = {
815 .map_dma_buf = mbochs_map_dmabuf, 821 .map_dma_buf = mbochs_map_dmabuf,
816 .unmap_dma_buf = mbochs_unmap_dmabuf, 822 .unmap_dma_buf = mbochs_unmap_dmabuf,
817 .release = mbochs_release_dmabuf, 823 .release = mbochs_release_dmabuf,
818 .map = mbochs_kmap_dmabuf, 824 .map = mbochs_kmap_dmabuf,
825 .unmap = mbochs_kunmap_dmabuf,
819 .mmap = mbochs_mmap_dmabuf, 826 .mmap = mbochs_mmap_dmabuf,
820}; 827};
821 828