On 05/22/2014 08:11 AM, Ouyang Changchun wrote: > This patch series contain the following 3 items: > 1. Add API to support administrative link up and down. > 2. Implement the functionality of administrative link up and down in IXGBE > PMD. > 3. Add command in testpmd to test the functionality of administrative link up > and down of PMD. > > Ouyang Changchun (3): > Add API for supporting administrative link up and down. > Implement the functionality of administrative link up and down in > IXGBE PMD. > Add command line to test the functionality of administrative link up > and down of PMD in testpmd. > > app/test-pmd/cmdline.c | 78 > +++++++++++++++++++++++++++++++++++++ > app/test-pmd/testpmd.c | 14 +++++++ > app/test-pmd/testpmd.h | 2 + > lib/librte_ether/rte_ethdev.c | 38 ++++++++++++++++++ > lib/librte_ether/rte_ethdev.h | 34 ++++++++++++++++ > lib/librte_pmd_ixgbe/ixgbe_ethdev.c | 58 +++++++++++++++++++++++++++ > 6 files changed, 224 insertions(+) >
Hi Changchun, The 2 functions "rte_eth_dev_admin_link_up" and "rte_eth_dev_admin_link_down" don't have an equivalent in the Linux kernel, thus I am wondering what is their effective usage from a network application perspective. Could you briefly explain in which use case these functions can be used for? By the way, it's not completely evident to infer the exact semantics of these 2 functions from their name. In particular, I do not see what the term "admin" brings to the understanding of their role. If it is to suggest that these functions are intended to force the link to a different state of its initial [self-detected] state, then the term "force" would be more appropriate. Otherwise, if eventually these functions appear to be mandatory, I suggest to rename them "rte_eth_dev_link_start" and "rte_eth_dev_link_stop" respectively, and to apply the same naming conventions in the 2 other patches. It might also be worth documenting in the comment section of the prototype of these 2 functions whether it makes sense or not to support a notion of link that can be dynamically started or stopped in non-physical PMDs (vmxnet3, virtio, etc). Regards, Ivan -- Ivan Boule 6WIND Development Engineer