numam-spdk/lib/vhost
Dariusz Stojaczyk 2c4c7c8870 rte_vhost: mantain separate virtio features field in virtio_net
There are two separate abstraction layers:
* vsocket - which represents a unix domain socket
* virtio_net - which represents a vsocket connection

There can be many connections
on the same socket. vsocket
provides an API to enable/disable
particular virtio features on
the fly, but it's the virtio_net
that uses these features.
virtio_net used to rely on
vsocket->features during
feature negotiation, breaking
the layer encapsulation (and
yet causing a deadlock - two
locks were being locked in a
separate order). Now each
virtio_net device has it's own
copy of vsocket features, created
at the time of virtio_net creation.
vsocket->features have to be
still present, as features can be
enabled/disabled while no
virtio_net device has been
created yet.

Fixes #214

Change-Id: Ic4b2dd8cae6050813fc9a420b2ed30bc5ae60393
Signed-off-by: Dariusz Stojaczyk <dariuszx.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/386294
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Pawel Wodkowski <pawelx.wodkowski@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2017-11-14 15:39:49 -05:00
..
rte_vhost rte_vhost: mantain separate virtio features field in virtio_net 2017-11-14 15:39:49 -05:00
Makefile env: Automatically register new memory with the IOMMU 2017-09-01 15:25:24 -04:00
test_plan.md test/vhost: Test Plan for vhost initiator. 2017-10-26 14:07:59 -04:00
vhost_blk.c vhost: interrupts coalescing 2017-10-27 13:06:40 -04:00
vhost_internal.h vhost: interrupts coalescing 2017-10-27 13:06:40 -04:00
vhost_rpc.c vhost: interrupts coalescing 2017-10-27 13:06:40 -04:00
vhost_scsi.c vhost: interrupts coalescing 2017-10-27 13:06:40 -04:00
vhost.c vhost: exit the vhost app for error configuration 2017-11-03 17:39:24 -04:00