Hi Ivan
For this one, it seems long story for that...
In short, 
Some customer have such kind of requirement, 
they want to repeatedly start(rte_dev_start) and stop(rte_dev_stop) the port 
for RX and TX, but they find
after several times start and stop, the RX and TX can't work well even the port 
starts,  and the packets error number increase.

To resolve this error number increase issue, and let port work fine even after 
repeatedly start and stop,
We need a new API to do it, after discussing, we have these 2 API, admin link 
up and admin link down.

Any difference if use " dev_link_start/stop" or " dev_link_up/down"? to me, 
admin_link_up/down is better than dev_link_start/stop,

If most people think we need change the name, it is ok to rename it.

I don't think we need it in non-physical PMDs. So no implementation in virtio 
PMD.

Thanks
Changchun


-----Original Message-----
From: Ivan Boule [mailto:ivan.bo...@6wind.com] 
Sent: Thursday, May 22, 2014 9:17 PM
To: Ouyang, Changchun; dev at dpdk.org
Subject: Re: [dpdk-dev] [PATCH 0/3] Support administrative link up and link down

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

Reply via email to