[PATCH 0/12][FG/linux-azure] Add MANA network driver

Tim Gardner tim.gardner at canonical.com
Tue May 18 15:08:49 UTC 2021



On 5/18/21 7:36 AM, Guilherme Piccoli wrote:
> On Tue, May 18, 2021 at 8:58 AM Tim Gardner <tim.gardner at canonical.com> wrote:
>>
>> BugLink: https://bugs.launchpad.net/bugs/1928788
>> https://canonical.my.salesforce.com/5004K000005pZQCQA2
>>
>> [Impact]
>>
>> 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 at 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 at decui-u2004-vf:~# modinfo mana | grep filename
>> filename: /lib/modules/5.4.0-1048-azure/kernel/drivers/net/ethernet/microsoft/mana/mana.ko
>>
>> root at 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 at 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 bugs that cause a kernel crash.
>>
>> [Other Info]
> 
> Thanks for the patch Tim! I'm almost ACKing, I just have 2 questions/comments:
> 
> (a) I've noticed you sent basically a full series for Focal and a full
> series for Groovy - all patches seems to have different offsets (at
> least) in both series.
> That said, in some patches you marked both F and G was "cherry picked
> from SHA1" - shouldn't it be "backported from SHA1" for at least one
> of the series, since you seem to have changed the offsets to apply the
> patch?
> 

'git cherry-pick' has better default context (or offset) handling then 
'git am', which is how these patches will be applied. Plus, I find it 
easier to select and save patches as a block for a specific series 
rather then have to tease the correct patches from an integrated list of 
patches.

> (b) About patch 6, I understand that for Focal patch, you added an
> extra hunk removing some stuff there. The change itself makes sense to
> me, but I'd suggest an extra SAUCE patch for that, it's not directly
> related to patch 6 right?
> 

It is related in that it was part of the backport. The commit 
cherry-picked cleanly, but netdev_lockdep_set_classes() did not exist in 
v5.4 which caused an FTBS (which is why the fix has to be part of this 
patch). I fenced it using '#if LINUX_VERSION_CODE' specifically so that 
it would attract reviewer attention. I wanted some assurance that 
removing the call to netdev_lockdep_set_classes() did not appear to have 
any material impact.

rtg
-- 
-----------
Tim Gardner
Canonical, Inc



More information about the kernel-team mailing list