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 <ian.sto...@intel.com <mailto:ian.sto...@intel.com>> 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 <xu.binb...@zte.com.cn
    <mailto:xu.binb...@zte.com.cn>>
     > ---
     >  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
     > d...@openvswitch.org <mailto:d...@openvswitch.org>
     > https://mail.openvswitch.org/mailman/listinfo/ovs-dev
    _______________________________________________
    dev mailing list
    d...@openvswitch.org <mailto:d...@openvswitch.org>
    https://mail.openvswitch.org/mailman/listinfo/ovs-dev


_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to