Subject: Re: [RFC RTNETLINK 04/09]: Link creation API

From: Patrick McHardy <[email-masked]>
Date: Wed, 06 Jun 2007 01:17:11 +0200

Stephen Hemminger wrote:
> On Tue,  5 Jun 2007 16:12:57 +0200 (MEST)
> Patrick McHardy <[email-masked]> wrote:
> 
> 
>>[RTNETLINK]: Link creation API
>>
>>Add rtnetlink API for creating, changing and deleting software devices.
>>
>>Signed-off-by: Patrick McHardy <[email-masked]>
>>
> 
> If you want I'll extend existing bridge netlink to use these.

Are you talking about brige-port information or bridge device
configuration? So far the API is not suitable for anything that
currently uses IFLA_PROTINFO because the sender is not the driver
which created the device and doesn't use AF_UNSPEC. For bridge
device configuration it would certainly be nice to have, but I'm
not sure yet how to handle enslave operations. So far my favourite
idea is to add enslave/release operations to rtnl_link_ops and call
them when IFLA_MASTER is set (so the netlink message would look like
this: ifindex: eth0 master: br0 nlmsg_type: RTM_NETLINK). But I
haven't really thought this through yet.

I would also like to add support for handling "secondary device state"
like bridge port state and others that currently use IFLA_PROTINFO
(a lot of the code is very similar to the generic code), but all ideas
so far turned out not to work very well.

I'm leaving for a short vacation until Sunday tommorrow, so replies
may be delayed :)