On Wed, Jul 26, 2017 at 03:35:51PM +0200, Gaetan Rivet wrote:
> Device detach in librte_ether is rough right now.
> 
>  - Device hotplug capability is not properly checked
>  - Device state should be set after a successful detach
>  - MLX drivers are lacking the relevant flag
>  - And this flag should actually be removed, thus occuring an API change
>    for v17.11. An announce follows.
> 
> Without this series on an MLX4 port:
> 
>    testpmd> port close 0
>    Closing ports...
>    Port 0 is now not stopped
>    Done
>    testpmd> port stop 0
>    Stopping ports...
>    Checking link statuses...
>    Done
>    testpmd> port close 0
>    Closing ports...
>    Done
>    testpmd> port detach 0
>    Detaching a port...
>    testpmd> show port info 0
>    Segmentation fault (core dumped)
> 
> With this series:
> 
>    testpmd> port stop 0
>    Stopping ports...
>    Checking link statuses...
>    Done
>    testpmd> port detach 0
>    Detaching a port...
>    Please close port first
>    testpmd> port close 0
>    Closing ports...
>    Done
>    testpmd> port detach 0
>    Detaching a port...
>    Port '00:03.0' is detached. Now total ports is 0
>    Done
>    testpmd> show port info 0
>    Invalid port 0
>    Valid port range is [0]
> 
> v2:
> 
>   - remove coredump from patchset
> 
> Gaetan Rivet (6):
>   ethdev: fix device state on detach
>   ethdev: properly check detach capability
>   net/mlx4: advertize the detach capability
>   net/mlx5: advertize the detach capability
>   app/testpmd: let the user know device detach failed
>   doc: announce ethdev API change for detach flag
> 
>  app/test-pmd/testpmd.c               |  9 ++++++---
>  doc/guides/rel_notes/deprecation.rst |  6 ++++++
>  drivers/net/mlx4/mlx4.c              |  1 +
>  drivers/net/mlx5/mlx5.c              |  1 +
>  lib/librte_ether/rte_ethdev.c        | 11 +----------
>  5 files changed, 15 insertions(+), 13 deletions(-)
> 
> -- 
> 2.1.4
> 

Acked-by: Adrien Mazarguil <adrien.mazarg...@6wind.com>

-- 
Adrien Mazarguil
6WIND

Reply via email to