Comment 0 for bug 1928788

Revision history for this message
Tim Gardner (timg-tpi) wrote : Add Mana network driver

SRU Justification

[Impact]

Microsoft has requested the addition of the "mana" driver from Linux v5.11

[Fix]

This patch set consists of 5 patches that are now in mainline.

The patches add the VF driver for Microsoft Azure Network Adapter (MANA), and also changes the hv_netvsc driver's netvsc/VF binding logic to check both the MAC address and the serial number (this is required by the MANA VF driver).

Microsoft would like to request the following 5 patches in all supported releases:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=64ff412ad41fe3a5bf759ff4844dc1382176485c

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=ca9c54d2d6a5ab2430c4eda364c77125d62e5e0f

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=55cdc26a91ac270887583945aef2bd460a2805f7

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=45b102dd81491e30ac7596b5515856141f99319f

https://git.kernel.org/pub/scm/linux/kernel/git/netdev/net-next.git/commit/?id=d90a94680bc0a8069d93282bc5f2966d00b9c4a4

[Test Plan]

2021-05-17 15:25 UTC-
-We tested the two versions of mana.ko:

root@decui-u2004-vf:~# uname -a
Linux decui-u2004-vf 5.4.0-1048-azure #50~sf00310147.1-Ubuntu SMP Tue May 11 02:06:24 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
root@decui-u2004-vf:~# modinfo mana | grep filename
filename: /lib/modules/5.4.0-1048-azure/kernel/drivers/net/ethernet/microsoft/mana/mana.ko

root@decui-u2004-vf:~# uname -a
Linux decui-u2004-vf 5.8.0-1032-azure #34~SF00310147.1-Ubuntu SMP Tue May 11 02:01:58 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux
root@decui-u2004-vf:~# modinfo mana | grep filename
filename: /lib/modules/5.8.0-1032-azure/kernel/drivers/net/ethernet/microsoft/mana/mana.ko

Everything worked as expected in our testing:
1. The MANA driver loads and unloads multiple times without any issue.
2. iperf TX/RX tests run without any issue, and the performance numbers are on par with what we get with the latest mainline kernel: the TX number is pretty good; the RX number is sometimes not great but this is a known issue with the latest mainline kernel as well.
3. "ethtool -S" and "ethtool -L" work as expected.
4. When iperf TX/RX tests are running, changing the number of the MANA NIC TX/RX queues and unloading/reloading the MANA driver work without any issue.

[Where problems could occur]

The driver may have bug(s) that cause a kernel crash.