Ethernet Products
Intel® Ethernet products and technologies
Announcements
The Intel sign-in experience is changing in February to support enhanced security controls. If you sign in, click here for more information.
4178 Discussions

there is no i40e_ndo_fdb_del in i40e driver

Shixin
Beginner
284 Views

Dear Intel Expert,

 

When I read the source code for i40e an igbxe driver, I found that they both has implement "ndo_fdb_add = i40e_ndo_fdb_add ", but there is ndo_fdb_del.

 

I want to ask why? it's a asic chip limition or you has not implement for the corner case

 

Thanks. 

 

Here is my case.

 

In centos, sriov is enabled for intel x722 nic.

3: enp103s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 6c:b3:11:53:a5:4c brd ff:ff:ff:ff:ff:ff
vf 0 MAC fa:0f:e6:6c:9b:00, vlan 1111, spoof checking on, link-state auto, trust off

vm1 is connected to vf 0, and there is also a bridge with enp103s0f0

# brctl show
bridge name              bridge id           STP enabled     interfaces
br_1111   8000.6cb31153a54c        no                     enp103s0f0.1111
                                                                                                                vnic1.0

and vm2 is connected to vnic1.0

vnic1.0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1450 qdisc mq master br_b115924_1111 state UNKNOWN mode DEFAULT group default qlen 1000
link/ether fe:80:73:23:db:00 brd ff:ff:ff:ff:ff:ff

 

to make vm1 connected to vm2, add a bridge fdb entry:
"bridge fdb add fe:80:73:23:db:00 dev enp103s0f0 self"

it work fine.

 

but when migrate vm2 to another host, then "bridge fdb del fe:80:73:23:db:00 dev enp103s0f0 self".  It will take half a miute to 10 mins before vm2 can ping vm1.

 

Since there is no i40e_ndo_fdb_del, why after sometime, it work again. 

If I did not del the fdb entry, it vm2 will never ping vm1.

 

Thanks. again.

 

 

 

0 Kudos
1 Solution
Crisselle_Intel
Moderator
223 Views

Hello Shixin,


Thank you for the update and we are more than glad to hear that the issue has been resolved by using the latest driver. 


Since the problem is now fixed, we'd like to check if you have additional questions or clarifications on this query? If yes, please let us know and we will be glad to check on it. Otherwise, please confirm if we can now close this request. 


Awaiting to hear from you soon. 


Should there be no response from you, I’ll make sure to reach out after 3 business days.


Best regards,

Crisselle C.

Intel® Customer Support


View solution in original post

7 Replies
Crisselle_Intel
Moderator
261 Views

Hello Shixin,


Thank you for posting in Intel Ethernet Communities. 


Please provide the following for us to better understand your query. 

1. Is the Ethernet embedded on your motherboard? If yes, please share the model of your Ethernet Controller and motherboard. If it is a PCIe Ethernet card, please also share its exact model. You may consider providing the PBA of the card for us to double check on it. You may refer to the link below on where to find the PBA number. It consist of 6-3 digit number located at the last part of the serial number. This would help us identify if you are using an Original Equipment Manufacturer(OEM) or retail version of Intel Ethernet Adapter.

Identify Your Intel® Network Adapter Model Using PBA Number

https://www.intel.com/content/www/us/en/support/articles/000007022/network-and-i-o/ethernet-products... 

2. Exact Operating System used.

3. Exact i40e and iavf driver used. You may also share the link where the drivers were downloaded from. 

4. When you mentioned below statement, did you mean when you compared source code of i40e and ixgbe driver?

When I read the source code for i40e an igbxe driver, I found that they both has implement "ndo_fdb_add = i40e_ndo_fdb_add ", but there is ndo_fdb_del.


Looking forward to your reply. 


We will follow up after 3 business days in case we don't hear from you. 


Best regards,

Crisselle C.

Intel® Customer Support


Shixin
Beginner
252 Views

Hi, Crisselle

 

Thanks for the reply.

#1. I can not provide the information in this week, because I can not entry the labbecause it's vocaltion.

#2.  OS is CentOS 7.6

# uname -a
Linux sds3 3.10.0-957.27.8.1.ga791a72.el7.x86_64 #1 SMP Fri Dec 10 03:17:08 EST 2021 x86_64 x86_64 x86_64 GNU/Linux

 

#3. the driver is installed with CentOS 7.6

[root@sds3 ~]# ip link
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether ac:1f:6b:ed:b9:04 brd ff:ff:ff:ff:ff:ff
3: enp103s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 1000
link/ether 6c:b3:11:53:a5:4c brd ff:ff:ff:ff:ff:ff
vf 0 MAC 00:00:00:00:00:00, spoof checking on, link-state auto, trust off

[root@sds3 ~]# ethtool -i enp103s0f0
driver: i40e
version: 2.3.2-k
firmware-version: 4.00 0x80001571 1.1999.0
expansion-rom-version:
bus-info: 0000:67:00.0
supports-statistics: yes
supports-test: yes
supports-eeprom-access: yes
supports-register-dump: yes
supports-priv-flags: yes
[root@sds3 ~]# lspci | grep 67:00.0
67:00.0 Ethernet controller: Intel Corporation Ethernet Connection X722 for 10GbE SFP+ (rev 04)

 

#4. in linux source 5.16, drivers/net/ethernet/intel/i40e/i40e_main.c

static const struct net_device_ops i40e_netdev_ops = {
13351 .ndo_open = i40e_open,
13352 .ndo_stop = i40e_close,
13353 .ndo_start_xmit = i40e_lan_xmit_frame,
13354 .ndo_get_stats64 = i40e_get_netdev_stats_struct,
13355 .ndo_set_rx_mode = i40e_set_rx_mode,

....

13377 .ndo_get_phys_port_id = i40e_get_phys_port_id,
13378 .ndo_fdb_add = i40e_ndo_fdb_add,
13379 .ndo_features_check = i40e_features_check,
13380 .ndo_bridge_getlink = i40e_ndo_bridge_getlink,

 

file: drivers/net/ethernet/intel/igb/igb_main.c

static const struct net_device_ops igb_netdev_ops = {
2985 .ndo_open = igb_open,
2986 .ndo_stop = igb_close,
2987 .ndo_start_xmit = igb_xmit_frame,
....
3005 .ndo_fdb_add = igb_ndo_fdb_add, 

 

what I want to ask why there is no ndo_fdb_del.

 

Thanks.

 

 

 

Crisselle_Intel
Moderator
249 Views

Hello Shixin,


Thank you for providing the requested information. 


Please allow us to further check your query with our engineers. We will give you an update as soon as possible but no later than 2-3 business days. 


Hoping for your kind patience. 


Best regards,

Crisselle C.

Intel® Customer Support


Crisselle_Intel
Moderator
234 Views

Hello Shixin,


Thank you for the patience on this matter.


We already heard from our engineers and have some clarifications on this matter. We hope you don't mind sharing this with us for further investigation.


1. Kindly confirm if your inquiry is about the "i40e_ndo_fdb_del" which does not exist in i40e version: 2.3.2-k based on your statement below.

but when migrate vm2 to another host, then "bridge fdb del fe:80:73:23:db:00 dev enp103s0f0 self". It will take half a miute to 10 mins before vm2 can ping vm1.

Since there is no i40e_ndo_fdb_del, why after sometime, it work again. 

If I did not del the fdb entry, it vm2 will never ping vm1.

2. Have you already tried the latest driver from our site below?

Intel® Network Adapter Driver for PCIe* 40 Gigabit Ethernet Network Connections under Linux*

https://www.intel.com/content/www/us/en/download/18026/intel-network-adapter-driver-for-pcie-40-giga...

3. We'd like to inform you that that CentOS is not listed as validated Operating System on X722. You may consider testing the driver on supported OS.

Supported Operating Systems for Intel® Ethernet Controllers (LOM)

https://www.intel.com/content/www/us/en/support/articles/000055236/ethernet-products/gigabit-etherne...


We look forward to your reply.


Should there be no reply, we will reach out after 3 business days. 


Best regards,

Crisselle C.

Intel Customer Support


Shixin
Beginner
227 Views

Thanks, Crisselle.

 

I tried i40e driver version 2.17.15.  This problem fix.

Crisselle_Intel
Moderator
224 Views

Hello Shixin,


Thank you for the update and we are more than glad to hear that the issue has been resolved by using the latest driver. 


Since the problem is now fixed, we'd like to check if you have additional questions or clarifications on this query? If yes, please let us know and we will be glad to check on it. Otherwise, please confirm if we can now close this request. 


Awaiting to hear from you soon. 


Should there be no response from you, I’ll make sure to reach out after 3 business days.


Best regards,

Crisselle C.

Intel® Customer Support


Crisselle_Intel
Moderator
206 Views

Hello Shixin,


Good day!


Since you already accepted our recent reply as solution, please be informed that we will now closed this request. Just feel free to post a new question if you may have any other inquiry in the future as this thread will no longer be monitored.


Thank you for choosing Intel and stay safe!


Best regards,

Crisselle C.

Intel® Customer Support


Reply