[dpdk-dev] [PATCH v2 0/3] clarify eth_dev state management
Thomas Monjalon
thomas.monjalon at 6wind.com
Wed Apr 5 22:46:59 CEST 2017
2017-03-31 14:04, Gaetan Rivet:
> 1. The hotplug API currently available in DPDK introduces the notion of
> device states (DEV_DETACHED, DEV_ATTACHED). These states are implicit
> and internal to the ethdev layer.
>
> 2. Device enumeration and access is done directly, without regard to the
> underlying state of a device. Applications are currently expected to cycle
> through the static rte_eth_devices array. Those using the hotplug API
> (rte_eth_dev_attach(), rte_eth_dev_detach()), are thus expected to deal
> themselves with possible discrepancies internal to the ethdev layer,
> i.e. avoid detached devices if necessary, without the state of the devices
> having been explicitly defined or exposed.
>
> 3. The hotplug API itself is not complete and cannot be used without
> introducing some bugs. Detaching a device will introduce inconsistencies in
> the device count, as explained in the related API.
> No function is exposed in the ethdev layer to permit applications to deal
> with it.
>
> This series addresses these issues so that:
>
> 1. Applications are not expected to manage the states of their devices, those
> should be kept internal to the ethdev layer.
>
> 2. The hotplug API is cleaner, with specific operations from the ethdev layer
> to be used if necessary.
>
> 3. Applications that are not interested in hotplug functionality are not concerned
> and do not require any change.
Applied, thanks
More information about the dev
mailing list