vhost: close remaining memory region FDs during backend cleanup
After changes done in commit f325e71c
, closing old FD is delayed until
VHOST_USER_SET_VRING_ADDR. If VM is closed before this call, original FDs
remain during vhost_backend_cleanup. This resolves issue #162.
This patch closes second set of FDs during vhost backend cleanup.
Signed-off-by: Tomasz Zawadzki <tomasz.zawadzki@intel.com>
Change-Id: Ieb9d123c987009ac451b6214bb74d2720d852781
Reviewed-on: https://review.gerrithub.io/361787
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Piotr Pelpliński <piotr.pelplinski@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
This commit is contained in:
parent
66349fbf7b
commit
216901dbd7
@ -109,7 +109,15 @@ free_mem_region(struct virtio_net *dev)
|
||||
void
|
||||
vhost_backend_cleanup(struct virtio_net *dev)
|
||||
{
|
||||
uint32_t i;
|
||||
|
||||
if (dev->mem) {
|
||||
if (dev->has_new_mem_table) {
|
||||
for (i = 0; i < dev->mem->nregions; i++) {
|
||||
close(dev->mem_table_fds[i]);
|
||||
}
|
||||
dev->has_new_mem_table = 0;
|
||||
}
|
||||
free_mem_region(dev);
|
||||
rte_free(dev->mem);
|
||||
dev->mem = NULL;
|
||||
|
Loading…
Reference in New Issue
Block a user