Subject: Re: [PATCH v2 5/6] net: dsa: add missing calls in dsa_switch_destroy

From: Neil Armstrong <[email-masked]>
Date: Thu, 29 Oct 2015 15:06:35 +0100

On 10/29/2015 03:00 PM, Andrew Lunn wrote:
> On Thu, Oct 29, 2015 at 02:23:25PM +0100, Neil Armstrong wrote:
>>
>> +		netif_carrier_off(ds->ports[port]);
>>  		unregister_netdev(ds->ports[port]);
>> +		phy_disconnect(p->phy);
>>  		free_netdev(ds->ports[port]);
>>  	}
> 
> Once you make it actually compile....
> 
> I'm not sure this is safe. The loop above this one has just destroyed
> some phys, and now you are potentially disconnecting a phy you just
> destroyed, causing it to be accessed?
> 
> I would suggest you first fix the ordering in dsa_switch_destroy()
> and then add the missing netif_carrier_off() and phy_disconnect().
> 
> Thanks
> 	Andrew
> 

Yes, you are right, I will submit a cleaned up version.
I forgot the fixed phy case actually.

Thanks,
Neil