mbox series

[0/2,RFC] exclude ivshmem mr from vhost sections

Message ID 20200828095953.2276-1-wangxinxin.wang@huawei.com (mailing list archive)
Headers show
Series exclude ivshmem mr from vhost sections | expand

Message

Wang Xin Aug. 28, 2020, 9:59 a.m. UTC
The ivshmem me now mapped to vhost memory regions, and it reduces
the number of available memslots of vhost backend, which may
causes vhost backend memory slots limit check failure in
vhost dev init.

Since ivshmem_bar2 not normal RAM in Guest, and it shouldn't
have vhost DMAing into them, exclude it from the vhost sections.

The 1st patch re-spin Dave's patch, see link
  https://lists.nongnu.org/archive/html/qemu-devel/2020-01/msg02370.html

However, I'm not sure is there any side effects, or maybe it's
better to add a new device property like 'novhost/nodma'?

Thanks,
Xin

Wang Xin (2):
  memory: Allow a MemoryRegion to be marked no_vhost
  misc/ivshmem: Mark shared memory regions as no vhost

 hw/misc/ivshmem.c     |  2 ++
 hw/virtio/vhost.c     |  5 ++++-
 include/exec/memory.h | 21 +++++++++++++++++++++
 softmmu/memory.c      | 15 +++++++++++++++
 4 files changed, 42 insertions(+), 1 deletion(-)

Comments

Wang Xin Sept. 4, 2020, 4:36 a.m. UTC | #1
Ping. 

> 
> The ivshmem me now mapped to vhost memory regions, and it reduces
> the number of available memslots of vhost backend, which may
> causes vhost backend memory slots limit check failure in
> vhost dev init.
> 
> Since ivshmem_bar2 not normal RAM in Guest, and it shouldn't
> have vhost DMAing into them, exclude it from the vhost sections.
> 
> The 1st patch re-spin Dave's patch, see link
>   https://lists.nongnu.org/archive/html/qemu-devel/2020-01/msg02370.html
> 
> However, I'm not sure is there any side effects, or maybe it's
> better to add a new device property like 'novhost/nodma'?
> 
> Thanks,
> Xin
> 
> Wang Xin (2):
>   memory: Allow a MemoryRegion to be marked no_vhost
>   misc/ivshmem: Mark shared memory regions as no vhost
> 
>  hw/misc/ivshmem.c     |  2 ++
>  hw/virtio/vhost.c     |  5 ++++-
>  include/exec/memory.h | 21 +++++++++++++++++++++
>  softmmu/memory.c      | 15 +++++++++++++++
>  4 files changed, 42 insertions(+), 1 deletion(-)
> 
> --
> 2.26.0.windows.1
>