2c4c7c8870
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> |
||
---|---|---|
.. | ||
bdev | ||
blob | ||
blobfs | ||
conf | ||
copy | ||
cunit | ||
env_dpdk | ||
event | ||
ioat | ||
iscsi | ||
json | ||
jsonrpc | ||
log | ||
lvol | ||
nbd | ||
net | ||
nvme | ||
nvmf | ||
rocksdb | ||
rpc | ||
scsi | ||
trace | ||
ut_mock | ||
util | ||
vhost | ||
Makefile |