Subject: Re: [PATCH 2/2] Virtual ethernet device driver

From: Pavel Emelianov <[email-masked]>
Date: Mon, 16 Jul 2007 13:16:57 +0400

Patrick McHardy wrote:
> Pavel Emelianov wrote:
>> Patrick McHardy wrote:
>>
>>> Pavel Emelianov wrote:
>>>
>>>> +	if (data != NULL && data[VETH_INFO_PEER] != NULL) {
>>>> +		err = nla_parse_nested(tb, IFLA_INFO_MAX,
>>>> +				data[VETH_INFO_PEER], ifla_policy);
>>>> +		if (err < 0)
>>>> +			return err;
>>>> +	}
>>>
>>> One more suggestion regarding the PEER attribute: you only nest
>>> IFLA attributes below it, but some information that might be
>>> interesting to use on device creation is contained in ifinfomsg
>>> (flags and ifindex). So I think it would be better to use a
>>> complete message, including header.
>>
>> I don't get it. Can you elaborate, please.
> 
> 
> You don't have a struct ifinfomsg for the peer device. At some
> point we might want to add support for specifying initial flags
> for the device (some easily supportable ones are IFF_PROMISC,
> IFF_ALLMULTI, IFF_NOARP) and ideally that should also be possible
> for the peer device.
> 
> So I suggest you use a complete ifinfomsg including the header
> instead of just the attributes for VETH_INFO_PEER.
> 
> 

I don't see any information from this struct being used on the
link-creation paths...

Pavel