Hi Anant,

>>
>> +static int aqc111_set_mac_addr(struct net_device *net, void *p)
>> +{
>> +    struct usbnet *dev = netdev_priv(net);
>> +    int ret = 0;
>> +
>> +    ret = eth_mac_addr(net, p);
>> +    if (ret < 0)
>> +            return ret;
>> +
> 
> When eth_mac_addr() fails, from what I can see, it returns either -EBUSY, or
> -EADDRNOTAVAIL.
> Wouldn't it be a better idea to set a random MAC address instead, when
> -EADDRNOTAVAIL is returned, so that the interface still comes up and is
> usable?
> 
> I'm only asking because this feels similar to the discussion that can be 
> found here.
>     
> https://urldefense.proofpoint.com/v2/url?u=https-3A__lkml.org_lkml_2020_10_2_305&d=DwIDaQ&c=nKjWec2b6R0mOyPaz7xtfQ&r=3kUjVPjrPMvlbd3rzgP63W0eewvCq4D-kzQRqaXHOqU&m=aJdSTt0SmQpKGqrsMm9TQ2mCWDH1Vc7arUp0xq-v6Ac&s=n-tXDyWIR5tPvrQ4DUasDgrocxKU3e_A-mh3Nv5JC5A&e=

Here in set_mac_addr driver is being asked to SET the specified mac.
If it fails - device will most probably drop the packets designated for it.

So I think no, you can't put here some random MAC.

Regards,
  Igor

Reply via email to