Hi all,

Following the discussion that took place during the tech board meeting,
it seems that some clarification and some additional discussion is
needed about this series.

As of now, what I plan to do is to:

1. Rebase this series upon the bus framework [1][2][3].
2. Write further documentation to clarify the meaning of this event and
further identify the best approach to implement it.

What I expect from this is to spawn a discussion about the best
way to achieve a true hot-plug feature in DPDK.

Any thoughts, comments regarding this?
Regards,

[1] http://dpdk.org/ml/archives/dev/2017-January/054165.html
[2] http://dpdk.org/ml/archives/dev/2017-March/059423.html
[3] http://dpdk.org/ml/archives/dev/2017-March/059376.html

On Fri, Mar 3, 2017 at 4:40 PM, Gaetan Rivet <gaetan.ri...@6wind.com> wrote:
>
> This new event represents the sudden removal of a device from its bus.
> The underlying resources exposed by the bus are expected not to be available
> anymore. The application should thus be able to react and possibly clean up
> related resources that it reserved for the removed device.
>
> This event is different from the current hotplug API available in the DPDK
> for two reasons:
>
> 1. It is a reactive design: the application reacts to a device that has been
>    removed instead of removing a device from its pool.
>
> 2. The event itself is going further than the current detaching of a device
>    from a DPDK application. If the bus is a hardware one, it is expected of 
> the
>    underlying resources to not be available anymore.
>
> This series adds a new event type to ethdev and implements it in mlx4.
> Testpmd is also updated to report all asynchronous ethdev events including 
> this
> one for testing purposes and as a practical usage example.
>
> This series depends on the series titled
> [PATCH 1/2] net/mlx4: split the definitions to the header file
>
> Gaetan Rivet (5):
>   ethdev: introduce device removal event
>   net/mlx4: device removal event support
>   app/testpmd: generic event handler
>   app/testpmd: request link status interrupt
>   app/testpmd: request device removal interrupt
>
>  app/test-pmd/parameters.c                       |   8 +
>  app/test-pmd/testpmd.c                          | 103 ++++++++++
>  app/test-pmd/testpmd.h                          |   2 +
>  doc/guides/nics/features/default.ini            |   1 +
>  doc/guides/nics/features/mlx4.ini               |   1 +
>  doc/guides/prog_guide/env_abstraction_layer.rst |  21 +-
>  drivers/net/mlx4/mlx4.c                         | 258 
> ++++++++++++++++++++----
>  drivers/net/mlx4/mlx4.h                         |   1 +
>  lib/librte_eal/common/include/rte_pci.h         |   2 +
>  lib/librte_ether/rte_ethdev.c                   |  13 +-
>  lib/librte_ether/rte_ethdev.h                   |   9 +-
>  11 files changed, 375 insertions(+), 44 deletions(-)
>
> --
> 2.1.4
>

Reply via email to