On Thu, Aug 25, 2016 at 2:43 AM, Sugesh Chandran <sugesh.chand...@intel.com> wrote: > diff --git a/lib/netdev-dpdk.c b/lib/netdev-dpdk.c > index 6d334db..46c4045 100644 > --- a/lib/netdev-dpdk.c > +++ b/lib/netdev-dpdk.c > static void > +dpdk_eth_checksum_offload_configure(struct netdev_dpdk *dev) > + OVS_REQUIRES(dev->mutex) > +{ > + struct rte_eth_dev_info info; > + bool rx_csum_ol_flag = false; > + uint32_t rx_chksm_offload_capa = DEV_RX_OFFLOAD_UDP_CKSUM | > + DEV_RX_OFFLOAD_TCP_CKSUM | > + DEV_RX_OFFLOAD_IPV4_CKSUM; > + rte_eth_dev_info_get(dev->port_id, &info); > + rx_csum_ol_flag = (dev->hw_ol_features & NETDEV_RX_CHECKSUM_OFFLOAD) != > 0; > + > + if (rx_csum_ol_flag && > + (info.rx_offload_capa & rx_chksm_offload_capa) != > + rx_chksm_offload_capa) { > + VLOG_WARN("Failed to enable Rx checksum offload on device %d", > + dev->port_id); > + dev->hw_ol_features &= ~NETDEV_RX_CHECKSUM_OFFLOAD; > + } > + netdev_request_reconfigure(&dev->up); > +}
Sorry :) I noticed one more thing. I think that if the device doesn't support checksum offload then we will continuously try to reconfigure the device, which I'm guessing is relatively expensive. I think this would happen every time that ovs-vswitchd wakes up. Are those assumptions correct? If so, that seems like a problem even if such devices are probably fairly rare to be used with DPDK. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev