On 8/22/2018 6:14 PM, Federico Iezzi wrote:
DPDK exposes API all the way from 10Mbps to 100Gbps.
http://doc.dpdk.org/api/rte__ethdev_8h_source.html
Can other cards be added? 25G is now getting really popular.
Thanks
It’s a good point, technically there’s nothing stopping users from using
25/50/56/100 Gbp HW.
25/50/56 Gb are not defined specifically as a port feature rate in the
openflow specifications at this time so they would have to be defined as
NETDEV_F_OTHER to correlate to the feature rate not being in the
ofp_port feature list in openflow.
The following incremental on the patch below should suffice:
@@ -2735,9 +2735,21 @@ netdev_dpdk_get_features(const struct netdev *netdev,
if (link.link_speed == ETH_SPEED_NUM_10G) {
*current = NETDEV_F_10GB_FD;
}
+ if (link.link_speed == ETH_SPEED_NUM_25G) {
+ *current = NETDEV_F_OTHER;
+ }
if (link.link_speed == ETH_SPEED_NUM_40G) {
*current = NETDEV_F_40GB_FD;
}
+ if (link.link_speed == ETH_SPEED_NUM_50G) {
+ *current = NETDEV_F_OTHER;
+ }
+ if (link.link_speed == ETH_SPEED_NUM_56G) {
+ *current = NETDEV_F_OTHER;
+ }
+ if (link.link_speed == ETH_SPEED_NUM_100G) {
+ *current = NETDEV_F_100GB_FD;
+ }
What are peoples thoughts? I can submit this as a separate patch if
preferred.
Thanks
Ian
Ian
On Wed, 22 Aug 2018 at 16:28, Stokes, Ian <[email protected]
<mailto:[email protected]>> wrote:
> In the scenario of XL710, the link speed which stored in the table of
> Interface is not 40G. Because the implementation of query of link
speed
> only support to 10G, the parameter 'current' will be a random
value in the
> scenario of higher link speed. In this case, incorrect link speed
of XL710
> nic will be stored in the database.
>
Good catch, I've tested and it works as expected. I'll add this to
the dpdk_merge pull request for this week and backport it to the
previous release branches also.
Thanks
Ian
> Signed-off-by: Xu Binbin <[email protected]
<mailto:[email protected]>>
> ---
> lib/netdev-dpdk.c | 3 +++
> 1 file changed, 3 insertions(+)
>
> diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c index
ac02a09..e4b6ced
> 100644
> --- a/lib/netdev-dpdk.c
> +++ b/lib/netdev-dpdk.c
> @@ -2735,6 +2735,9 @@ netdev_dpdk_get_features(const struct netdev
> *netdev,
> if (link.link_speed == ETH_SPEED_NUM_10G) {
> *current = NETDEV_F_10GB_FD;
> }
> + if (link.link_speed == ETH_SPEED_NUM_40G) {
> + *current = NETDEV_F_40GB_FD;
> + }
> }
>
> if (link.link_autoneg) {
> --
> 1.8.3.1
>
> _______________________________________________
> dev mailing list
> [email protected] <mailto:[email protected]>
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
_______________________________________________
dev mailing list
[email protected] <mailto:[email protected]>
https://mail.openvswitch.org/mailman/listinfo/ovs-dev
_______________________________________________
dev mailing list
[email protected]
https://mail.openvswitch.org/mailman/listinfo/ovs-dev