Hi list!

We are working on the new 3.2 feature for adding support for updating VM
devices, more specifically at the moment network devices.

There is one point of the design which is not yet consensual and we'd 
need to agree on a proper and clean design that would satisfy us all:

My current proposal, as reflected by patch:
   http://gerrit.ovirt.org/#/c/9560/5/vdsm_api/vdsmapi-schema.json
and its parent is to have a linkActive boolean that is true for link
status 'up' and false for link status 'down'.

We want to support a none (dummy) network that is used to dissociate vnics
from any real network. The semantics, as you can see in the patch are that
unless you specify a network, updateDevice will place the interface on that
network. However, Adam Litke argues that not specifying a network should
keep the vnic on the network it currently is, as network is an optional
parameter and 'linkActive' is also optional and has this "preserve current
state" semantics.

I can certainly see the merit of what Adam proposes, and the implementation
would be that linkActive becomes an enum like so:

{'enum': 'linkState'/* or linkActive */ , 'data': ['up', 'down', 
'disconnected']}

With this change, network would only be changed if one different than the 
current
one is specified and the vnic would be taken to the dummy bridge when the 
linkState
would be set to 'disconnected'.

There is also an objection, raised by Adam about the semantics of portMirroring.
The current behavior from my patch is:

portMirroring is None or is not set -> No action taken.
portMirroring = [] -> No action taken.
portMirroring = [a,b,z] -> Set port mirroring for nets a,b and z to the 
specified vnic.

His proposal is:
portMirroring is None or is not set -> No action taken.
portMirroring = [] -> Unset port mirroring to the vnic that is currently set.
portMirroring = [a,b,z] -> Set port mirroring for nets a,b and z to the 
specified vnic.

I would really welcome comments on this to have finally an agreement to the api 
for this
feature.

Best,

Toni
_______________________________________________
vdsm-devel mailing list
vdsm-devel@lists.fedorahosted.org
https://lists.fedorahosted.org/mailman/listinfo/vdsm-devel

Reply via email to