[PATCH] net/ethernet/freescale: rework quiesce/activate for ucc_geth

Valentin Longchamp valentin at longchamp.me
Tue May 26 15:16:45 AEST 2020


Le 23.05.2020 à 00:50, David Miller a écrit :
> From: Valentin Longchamp <valentin at longchamp.me>
> Date: Wed, 20 May 2020 17:53:50 +0200
> 
>> ugeth_quiesce/activate are used to halt the controller when there is a
>> link change that requires to reconfigure the mac.
>>
>> The previous implementation called netif_device_detach(). This however
>> causes the initial activation of the netdevice to fail precisely because
>> it's detached. For details, see [1].
>>
>> A possible workaround was the revert of commit
>> net: linkwatch: add check for netdevice being present to linkwatch_do_dev
>> However, the check introduced in the above commit is correct and shall be
>> kept.
>>
>> The netif_device_detach() is thus replaced with
>> netif_tx_stop_all_queues() that prevents any tranmission. This allows to
>> perform mac config change required by the link change, without detaching
>> the corresponding netdevice and thus not preventing its initial
>> activation.
>>
>> [1] https://lists.openwall.net/netdev/2020/01/08/201
>>
>> Signed-off-by: Valentin Longchamp <valentin at longchamp.me>
>> Acked-by: Matteo Ghidoni <matteo.ghidoni at ch.abb.com>
> 
> Applied, thanks.
> 

Thanks David.

May I suggest that this get backported to stable until (including) the 
4.19 stable release ?

As the above mentioned commit, merged for 4.19,
124eee3f6955 net: linkwatch: add check for netdevice being present to 
linkwatch_do_dev
does indeed break the ucc_geth driver, this patch can be considered as a 
bugfix that should be taken into account for stable.


More information about the Linuxppc-dev mailing list