/*-
* GPL LICENSE SUMMARY
*
- * Copyright(c) 2010-2013 Intel Corporation. All rights reserved.
+ * Copyright(c) 2010-2014 Intel Corporation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of version 2 of the GNU General Public License as
dev->pthread = NULL;
}
+#ifdef RTE_KNI_VHOST
+ kni_vhost_backend_release(dev);
+#endif
kni_dev_remove(dev);
list_del(&dev->list);
}
for (j = 0; j < KNI_RX_LOOP_NUM; j++) {
list_for_each_entry_safe(dev, n,
&kni_list_head, list) {
+#ifdef RTE_KNI_VHOST
+ kni_chk_vhost_rx(dev);
+#else
kni_net_rx(dev);
+#endif
kni_net_poll_resp(dev);
}
}
while (!kthread_should_stop()) {
for (j = 0; j < KNI_RX_LOOP_NUM; j++) {
+#ifdef RTE_KNI_VHOST
+ kni_chk_vhost_rx(dev);
+#else
kni_net_rx(dev);
+#endif
kni_net_poll_resp(dev);
}
schedule_timeout_interruptible(usecs_to_jiffies( \
kni->mbuf_kva = phys_to_virt(dev_info.mbuf_phys);
kni->mbuf_va = dev_info.mbuf_va;
+#ifdef RTE_KNI_VHOST
+ kni->vhost_queue = NULL;
+ kni->vq_status = BE_STOP;
+#endif
kni->mbuf_size = dev_info.mbuf_size;
KNI_PRINT("tx_phys: 0x%016llx, tx_q addr: 0x%p\n",
return -ENODEV;
}
+#ifdef RTE_KNI_VHOST
+ kni_vhost_init(kni);
+#endif
+
/**
* Create a new kernel thread for multiple mode, set its core affinity,
* and finally wake it up.
dev->pthread = NULL;
}
+#ifdef RTE_KNI_VHOST
+ kni_vhost_backend_release(dev);
+#endif
kni_dev_remove(dev);
list_del(&dev->list);
ret = 0;