[PATCH V6 0/5] app/testpmd: support multiple process attach and detach port
lihuisong (C)
lihuisong at huawei.com
Wed Jun 7 12:14:09 CEST 2023
在 2023/6/7 0:26, Ferruh Yigit 写道:
> On 5/27/2023 3:11 AM, Huisong Li wrote:
>> This patchset fix some bugs and support attaching and detaching port
>> in primary and secondary.
>>
> Hi Huisong,
>
> As commented on v4, I have some concerns on this set.
please see my reply.
>
> The set does multiple ethdev/testpmd change, but the main target of the
> patch is not described clearly/simply.
The main target is to support attaching and detaching port in primary
and secondary.
Fixed some problems by the way.
>
> It looks like intention is to be able to register NEW event callback in
> the secondary process and be able to setup device in secondary when
> primary attaches a device,
> but my question is why not multi-process communication socket can't be
> used for this?
>
> MP socket/communication/thread is developed for this reason, I am not
> convinced why it can't be used to sync primary and secondary for device
> attach/detach.
The secondary process automatically probes the device when primary
attaches a device.
The primary process automatically probes the device before doing probe
phase in secondary when secondary attaches a device.
Above behavior itself is attributed to multi-process socket
communication(see hogplug_mp.c).
This series are just to support this feature in testpmd.
But hogplug_mp cannot do something for application, like updating
information, which is the duty of application.
>
>
>> ---
>> -v6: adjust rte_eth_dev_is_used position based on alphabetical order
>> in version.map
>> -v5: move 'ALLOCATED' state to the back of 'REMOVED' to avoid abi break.
>> -v4: fix a misspelling.
>> -v3:
>> #1 merge patch 1/6 and patch 2/6 into patch 1/5, and add modification
>> for other bus type.
>> #2 add a RTE_ETH_DEV_ALLOCATED state in rte_eth_dev_state to resolve
>> the probelm in patch 2/5.
>> -v2: resend due to CI unexplained failure.
>>
>> Huisong Li (5):
>> drivers/bus: restore driver assignment at front of probing
>> ethdev: fix skip valid port in probing callback
>> app/testpmd: check the validity of the port
>> app/testpmd: add attach and detach port for multiple process
>> app/testpmd: stop forwarding in new or destroy event
>>
>> app/test-pmd/testpmd.c | 47 +++++++++++++++---------
>> app/test-pmd/testpmd.h | 1 -
>> drivers/bus/auxiliary/auxiliary_common.c | 9 ++++-
>> drivers/bus/dpaa/dpaa_bus.c | 9 ++++-
>> drivers/bus/fslmc/fslmc_bus.c | 8 +++-
>> drivers/bus/ifpga/ifpga_bus.c | 12 ++++--
>> drivers/bus/pci/pci_common.c | 9 ++++-
>> drivers/bus/vdev/vdev.c | 10 ++++-
>> drivers/bus/vmbus/vmbus_common.c | 9 ++++-
>> drivers/net/bnxt/bnxt_ethdev.c | 3 +-
>> drivers/net/bonding/bonding_testpmd.c | 1 -
>> drivers/net/mlx5/mlx5.c | 2 +-
>> lib/ethdev/ethdev_driver.c | 13 +++++--
>> lib/ethdev/ethdev_driver.h | 12 ++++++
>> lib/ethdev/ethdev_pci.h | 2 +-
>> lib/ethdev/rte_class_eth.c | 2 +-
>> lib/ethdev/rte_ethdev.c | 4 +-
>> lib/ethdev/rte_ethdev.h | 4 +-
>> lib/ethdev/version.map | 1 +
>> 19 files changed, 114 insertions(+), 44 deletions(-)
>>
> .
More information about the dev
mailing list