Subject: Re: [net-next-2.6 V8 PATCH 1/2] Add netlink support for virtual port management

From: David Miller <[email-masked]>
Date: Mon, 17 May 2010 17:47:45 -0700 (PDT)

From: Arnd Bergmann <[email-masked]>
Date: Sat, 15 May 2010 11:07:51 +0200

> On Saturday 15 May 2010 05:11:30 Chris Wright wrote:
>> * Scott Feldman ([email-masked]) wrote:
>> > From: Scott Feldman <[email-masked]>
>> > 
>> > Add new netdev ops ndo_{set|get}_vf_port to allow setting of
>> > port-profile on a netdev interface.  Extends netlink socket RTM_SETLINK/
>> > RTM_GETLINK with two new sub msgs called IFLA_VF_PORTS and IFLA_PORT_SELF
>> > (added to end of IFLA_cmd list).  These are both nested atrtibutes
>> > using this layout:
>> > 
>> >               [IFLA_NUM_VF]
>> >               [IFLA_VF_PORTS]
>> >                       [IFLA_VF_PORT]
>> >                               [IFLA_PORT_*], ...
>> >                       [IFLA_VF_PORT]
>> >                               [IFLA_PORT_*], ...
>> >                       ...
>> >               [IFLA_PORT_SELF]
>> >                       [IFLA_PORT_*], ...
>> > 
>> > These attributes are design to be set and get symmetrically.  VF_PORTS
>> > is a list of VF_PORTs, one for each VF, when dealing with an SR-IOV
>> > device.  PORT_SELF is for the PF of the SR-IOV device, in case it wants
>> > to also have a port-profile, or for the case where the VF==PF, like in
>> > enic patch 2/2 of this patch set.
>> > 
>> > A port-profile is used to configure/enable the external switch virtual port
>> > backing the netdev interface, not to configure the host-facing side of the
>> > netdev.  A port-profile is an identifier known to the switch.  How port-
>> > profiles are installed on the switch or how available port-profiles are
>> > made know to the host is outside the scope of this patch.
>> > 
>> > There are two types of port-profiles specs in the netlink msg.  The first spec
>> > is for 802.1Qbg (pre-)standard, VDP protocol.  The second spec is for devices
>> > that run a similar protocol as VDP but in firmware, thus hiding the protocol
>> > details.  In either case, the specs have much in common and makes sense to
>> > define the netlink msg as the union of the two specs.  For example, both specs
>> > have a notition of associating/deassociating a port-profile.  And both specs
>> > require some information from the hypervisor manager, such as client port
>> > instance ID.
>> > 
>> > The general flow is the port-profile is applied to a host netdev interface
>> > using RTM_SETLINK, the receiver of the RTM_SETLINK msg communicates with the
>> > switch, and the switch virtual port backing the host netdev interface is
>> > configured/enabled based on the settings defined by the port-profile.  What
>> > those settings comprise, and how those settings are managed is again
>> > outside the scope of this patch, since this patch only deals with the
>> > first step in the flow.
>> > 
>> > Signed-off-by: Scott Feldman <[email-masked]>
>> > Signed-off-by: Roopa Prabhu<[email-masked]>
>> 
>> Assuming the SR-IOV VFINFO changes go in there will be some minor patch
>> conflicts to be sorted out.
> 
> Right, I assume the best resolution then would be drop IFLA_VF_PORTS and
> put the IFLA_VF_PORT attribute inside IFLA_VF_INFO, correct?
> 
>> Acked-by: Chris Wright <[email-masked]>
> 
> Acked-by: Arnd Bergmann <[email-masked]>

Hey guys, please respin these patches now that the SR-IOV VF patch is in
the tree.

Thanks!