As a heads up, I've left Nutanix and updated it in MAINTAINERS. Will be updating it again shortly so tagging these with my new work email.
On Fri, Feb 2, 2024 at 4:54 PM David Hildenbrand <da...@redhat.com> wrote: > > We barely had mmap_offset set in the past. With virtio-mem and > dynamic-memslots that will change. > > In vu_add_mem_reg() and vu_set_mem_table_exec_postcopy(), we are > performing pointer arithmetics, which is wrong. Let's simply > use dev_region->mmap_addr instead of "void *mmap_addr". > > Fixes: ec94c8e621de ("Support adding individual regions in libvhost-user") > Fixes: 9bb38019942c ("vhost+postcopy: Send address back to qemu") > Cc: Raphael Norwitz <raphael.norw...@nutanix.com> > Signed-off-by: David Hildenbrand <da...@redhat.com> Reviewed-by: Raphael Norwitz <raph...@enfabrica.net> > --- > subprojects/libvhost-user/libvhost-user.c | 8 ++++---- > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/subprojects/libvhost-user/libvhost-user.c > b/subprojects/libvhost-user/libvhost-user.c > index a3b158c671..7e515ed15d 100644 > --- a/subprojects/libvhost-user/libvhost-user.c > +++ b/subprojects/libvhost-user/libvhost-user.c > @@ -800,8 +800,8 @@ vu_add_mem_reg(VuDev *dev, VhostUserMsg *vmsg) { > * Return the address to QEMU so that it can translate the ufd > * fault addresses back. > */ > - msg_region->userspace_addr = (uintptr_t)(mmap_addr + > - dev_region->mmap_offset); > + msg_region->userspace_addr = dev_region->mmap_addr + > + dev_region->mmap_offset; > > /* Send the message back to qemu with the addresses filled in. */ > vmsg->fd_num = 0; > @@ -969,8 +969,8 @@ vu_set_mem_table_exec_postcopy(VuDev *dev, VhostUserMsg > *vmsg) > /* Return the address to QEMU so that it can translate the ufd > * fault addresses back. > */ > - msg_region->userspace_addr = (uintptr_t)(mmap_addr + > - dev_region->mmap_offset); > + msg_region->userspace_addr = dev_region->mmap_addr + > + dev_region->mmap_offset; > close(vmsg->fds[i]); > } > > -- > 2.43.0 > >