- if (dev->tapfds[pair_idx] >= 0) {
- close(dev->tapfds[pair_idx]);
- dev->tapfds[pair_idx] = -1;
+ tapfd = dev->tapfds[pair_idx];
+ if (vhost_kernel_set_backend(vhostfd, -1) < 0) {
+ PMD_DRV_LOG(ERR, "fail to set backend for vhost kernel");
+ return -1;
+ }
+ if (req_mq && vhost_kernel_tap_set_queue(tapfd, false) < 0) {
+ PMD_DRV_LOG(ERR, "fail to disable tap for vhost kernel");
+ return -1;