Subject: Re: [net-next-2.6 V6 PATCH 1/2] Add netlink support for virtual port management (was iovnl)

From: Arnd Bergmann <[email-masked]>
Date: Fri, 14 May 2010 09:17:28 +0200

On Thursday 13 May 2010, Patrick McHardy wrote:
> > +enum {
> > +     VF_PORT_REQUEST_PREASSOCIATE = 0,
> > +     VF_PORT_REQUEST_PREASSOCIATE_RR,
> > +     VF_PORT_REQUEST_ASSOCIATE,
> > +     VF_PORT_REQUEST_DISASSOCIATE,
> > +};
> 
> Do multiple of these commands have to be issued in order to
> reach "associated" state? That also wouldn't fit into the
> rtnetlink design, which contains state, not commands.

In 802.1Qbg (see http://www.ieee802.org/1/files/public/docs2010/bg-joint-evb-0410v1.pdf)
they are defined both as state and as commands. I suggested
using the same definition so that we can use the exact values
when forming or receiving a TLV for the VDP protocol. We can change
freely between the first three during guest migration, but the port
(identified by the UUID) can only be in associate state on one
machine, and the switches would use that information to redirect
the data flow to the target of the migration.

The disassociate state is a bit strange in netlink because it
essentially means that the other information is now invalid,
but I'm not sure if there is a good alternative. If the switch
tells us that it is setting the link into disassociate state,
that should still be visible in netlink.

	Arnd