This patch series first fixes missing reallocations of some Virtqueue and device metadata.
Then, it improves the the numa_realloc function by using rte_realloc_socket API that takes cares of the memcpy & freeing. The VQs NUMA IDs are also saved in the VQ metadata and used for every allocations so that all allocations before NUMA realloc are on the same VQ, later ones are allocated on the proper one. Finally inflight feature metada are converted from calloc() to rte_zmalloc_socket() and their reallocation is handled in numa_realloc(). Maxime Coquelin (6): vhost: fix missing memory table NUMA realloc vhost: fix missing guest pages table NUMA realloc vhost: fix missing cache logging NUMA realloc vhost: improve NUMA reallocation vhost: allocate all data on same node as virtqueue vhost: convert inflight data to DPDK allocation API lib/vhost/vhost.c | 38 ++++--- lib/vhost/vhost.h | 1 + lib/vhost/vhost_user.c | 232 ++++++++++++++++++++++++----------------- 3 files changed, 155 insertions(+), 116 deletions(-) -- 2.31.1