Message ID | 20240202215332.118728-9-david@redhat.com |
---|---|
State | New |
Headers | show |
Series | libvhost-user: support more memslots and cleanup memslot handling code | expand |
On Fri, Feb 2, 2024 at 4:56 PM David Hildenbrand <david@redhat.com> wrote: > > dev->nregions always covers only valid entries. Stop zeroing out other > array elements that are unused. > > Signed-off-by: David Hildenbrand <david@redhat.com> Reviewed-by: Raphael Norwitz <raphael@enfabrica.net> > --- > subprojects/libvhost-user/libvhost-user.c | 7 +------ > 1 file changed, 1 insertion(+), 6 deletions(-) > > diff --git a/subprojects/libvhost-user/libvhost-user.c b/subprojects/libvhost-user/libvhost-user.c > index f99c888b48..e1a1b9df88 100644 > --- a/subprojects/libvhost-user/libvhost-user.c > +++ b/subprojects/libvhost-user/libvhost-user.c > @@ -888,13 +888,9 @@ vu_rem_mem_reg(VuDev *dev, VhostUserMsg *vmsg) { > > munmap((void *)(uintptr_t)r->mmap_addr, r->size + r->mmap_offset); > > - /* > - * Shift all affected entries by 1 to close the hole at index i and > - * zero out the last entry. > - */ > + /* Shift all affected entries by 1 to close the hole at index. */ > memmove(dev->regions + i, dev->regions + i + 1, > sizeof(VuDevRegion) * (dev->nregions - i - 1)); > - memset(dev->regions + dev->nregions - 1, 0, sizeof(VuDevRegion)); > DPRINT("Successfully removed a region\n"); > dev->nregions--; > i--; > @@ -2119,7 +2115,6 @@ vu_init(VuDev *dev, > DPRINT("%s: failed to malloc mem regions\n", __func__); > return false; > } > - memset(dev->regions, 0, VHOST_USER_MAX_RAM_SLOTS * sizeof(dev->regions[0])); > > dev->vq = malloc(max_queues * sizeof(dev->vq[0])); > if (!dev->vq) { > -- > 2.43.0 > >
diff --git a/subprojects/libvhost-user/libvhost-user.c b/subprojects/libvhost-user/libvhost-user.c index f99c888b48..e1a1b9df88 100644 --- a/subprojects/libvhost-user/libvhost-user.c +++ b/subprojects/libvhost-user/libvhost-user.c @@ -888,13 +888,9 @@ vu_rem_mem_reg(VuDev *dev, VhostUserMsg *vmsg) { munmap((void *)(uintptr_t)r->mmap_addr, r->size + r->mmap_offset); - /* - * Shift all affected entries by 1 to close the hole at index i and - * zero out the last entry. - */ + /* Shift all affected entries by 1 to close the hole at index. */ memmove(dev->regions + i, dev->regions + i + 1, sizeof(VuDevRegion) * (dev->nregions - i - 1)); - memset(dev->regions + dev->nregions - 1, 0, sizeof(VuDevRegion)); DPRINT("Successfully removed a region\n"); dev->nregions--; i--; @@ -2119,7 +2115,6 @@ vu_init(VuDev *dev, DPRINT("%s: failed to malloc mem regions\n", __func__); return false; } - memset(dev->regions, 0, VHOST_USER_MAX_RAM_SLOTS * sizeof(dev->regions[0])); dev->vq = malloc(max_queues * sizeof(dev->vq[0])); if (!dev->vq) {
dev->nregions always covers only valid entries. Stop zeroing out other array elements that are unused. Signed-off-by: David Hildenbrand <david@redhat.com> --- subprojects/libvhost-user/libvhost-user.c | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-)