Subject: Re: [RFC PATCH] core: Add ioctls to control device unicast hw addresses

From: Vlad Yasevich <[email-masked]>
Date: Tue, 26 Feb 2013 15:24:33 -0500

On 02/26/2013 03:03 PM, David Miller wrote:
> From: Vlad Yasevich <[email-masked]>
> Date: Tue, 26 Feb 2013 14:44:22 -0500
>
>> David Miller wrote:
>>> No new ioctls please, extend the netlink interfaces as necessary
>>> instead.
>>>
>>> Thanks.
>>
>> So, something like below patch (compiled only) would be better in your opinion?
>> The one concern I have is that there is no way to probe for the availabilty
>> of this functionality, since netlink will just ignore unknown types and appear
>> to succeed.  With an ioctl it is clear if the support is present.
>>
>> -- >8 --
>>
>>
>> [RFC PATCH] rtnetlink: Add support for adding/removing additional hw addresses.
>>
>> Add an ability to add and remove HW addresses to the device
>> unicast and multicast address lists.  Right now, we only have
>> an ioctl() to manage the multicast addresses and there is no
>> way the manage the unicast list.
>>
>> Signed-off-by: Vlad Yasevich <[email-masked]>
>
> This is a step in the right direction, and you're right that there is
> a difficulty in detecting whether support exists or not.
>
> I am so surprised that we've have ->set_rx_mode() support for multiple
> unicast MAC addresses in so many drivers all this time, yet no way
> outside of FDB to make use of it at all.

And even that is not always available.  In most drivers it requires
module parameters or other explicit configuration steps.  Meanwhile 
set_rx_mode() doesn't seem to depend on any of those and just does the 
right thing.

For what I was trying to do ioctl() was a really easy way out for both 
kernel and user space implementation, so I gave is shot.

-vlad

>
> Anyways, as per the feature detection issue, we could create a new
> RTM_* operation that returns a u32 feature flag mask.  It's just one
> idea.
>