vhost-user: unmap previously configured memory if necessary 40/2540/2
authorSteve Shin <jonshin@cisco.com>
Fri, 19 Aug 2016 00:34:52 +0000 (17:34 -0700)
committerJohn Lo <loj@cisco.com>
Tue, 30 Aug 2016 03:07:00 +0000 (03:07 +0000)
If there's any memory-mapped region configued previously,
it should be unmapped before setting up a new vhost memory table.
Otherwise, huge page leakage will happen.

Change-Id: I375f603ea303919f1502df44a26a7384ab2ea00e
Signed-off-by: Steve Shin <jonshin@cisco.com>
(cherry picked from commit 5e15c91b6c2b5fbd7f989c5dc4edde506d254926)

vnet/vnet/devices/dpdk/vhost_user.c

index 03f8492..58cff7b 100644 (file)
@@ -1130,6 +1130,9 @@ dpdk_vhost_user_socket_read (unix_file_t * uf)
          goto close_socket;
        }
 
+      /* Unmap previously configured memory if necessary */
+      dpdk_unmap_all_mem_regions (xd);
+
       dpdk_vhost_user_set_mem_table (xd->vlib_hw_if_index, &msg.memory, fds);
       break;