2015-06-26 10:37, Shaopeng He: > The default MAC address is directly copied to Device Ethernet > Link address array in the device initialize phase, which
Do you mean "device start phase" instead? > bypasses fm10k MAC address number check mechanism, and will > cause an error message when adding default VLAN. Fix it by What is the error message? Is it only an error message or a behaviour error? > moving default MAC address registration to device > initialize phase. Yes it is moved from start to init. > --- a/drivers/net/fm10k/fm10k_ethdev.c > +++ b/drivers/net/fm10k/fm10k_ethdev.c > @@ -791,14 +791,10 @@ fm10k_dev_start(struct rte_eth_dev *dev) > } > } > > - if (hw->mac.default_vid && hw->mac.default_vid <= ETHER_MAX_VLAN_ID) { > - /* Update default vlan */ > + /* Update default vlan */ > + if (hw->mac.default_vid && hw->mac.default_vid <= ETHER_MAX_VLAN_ID) > fm10k_vlan_filter_set(dev, hw->mac.default_vid, true); > > - /* Add default mac/vlan filter to PF/Switch manager */ > - fm10k_MAC_filter_set(dev, hw->mac.addr, true); > - } > - > return 0; > } > > @@ -2144,6 +2140,8 @@ eth_fm10k_dev_init(struct rte_eth_dev *dev) > > fm10k_mbx_unlock(hw); > > + /* Add default mac address */ > + fm10k_MAC_filter_set(dev, hw->mac.addr, true); > > return 0; > } >