RE: git: 15e7fa83ef3c - main - arm64: Hyper-V: Add vPCI and Mellanox driver modules into build
- Reply: Jessica Clarke : "Re: git: 15e7fa83ef3c - main - arm64: Hyper-V: Add vPCI and Mellanox driver modules into build"
- In reply to: Jessica Clarke : "Re: git: 15e7fa83ef3c - main - arm64: Hyper-V: Add vPCI and Mellanox driver modules into build"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Tue, 14 Mar 2023 04:22:30 UTC
> -----Original Message-----
> From: Jessica Clarke <jrtc27@freebsd.org>
> Sent: Tuesday, March 14, 2023 12:04 PM
> To: Wei Hu <whu@FreeBSD.org>
> Cc: src-committers@freebsd.org; dev-commits-src-all@freebsd.org; dev-
> commits-src-main@freebsd.org
> Subject: Re: git: 15e7fa83ef3c - main - arm64: Hyper-V: Add vPCI and
> Mellanox driver modules into build
>
> On 14 Mar 2023, at 03:57, Jessica Clarke <jrtc27@FreeBSD.org> wrote:
> >
> > On 13 Mar 2023, at 03:00, Wei Hu <whu@FreeBSD.org> wrote:
> >>
> >> The branch main has been updated by whu:
> >>
> >> URL:
> >>
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Fcgi
> >>
> t.freebsd.org%2Fsrc%2Fcommit%2F%3Fid%3D15e7fa83ef3cd909e1d1b3b2ca
> da8d
> >>
> 9073f2e22e&data=05%7C01%7Cweh%40microsoft.com%7Ce49561fcb0054db
> 78cfc0
> >>
> 8db244136f1%7C72f988bf86f141af91ab2d7cd011db47%7C1%7C0%7C6381436
> 34775
> >>
> 142011%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2
> luMzIiLC
> >>
> JBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=Ne98uGxwYg
> CfWaRPct
> >> 8KCG%2FBEcwSf0HmjmcuW7Rx0FU%3D&reserved=0
> >>
> >> commit 15e7fa83ef3cd909e1d1b3b2cada8d9073f2e22e
> >> Author: Wei Hu <whu@FreeBSD.org>
> >> AuthorDate: 2023-03-13 02:55:04 +0000
> >> Commit: Wei Hu <whu@FreeBSD.org>
> >> CommitDate: 2023-03-13 02:55:04 +0000
> >>
> >> arm64: Hyper-V: Add vPCI and Mellanox driver modules into build
> >
> > What does Mellanox have to do with Hyper-V? I doubt it's being emulated.
>
> I guess because Azure Accelerated Networking has Mellanox hardware. In
> which case it doesn't belong in std.hyperv, it belongs in std.azure, as
> std.hyperv is for things needed for Hyper-V, not platforms that happen to
> use Hyper-V.
Hyper-V supports SRIOV devices. For now Mellanox NICs is the only NIC type supported.
Mellanox drivers were not included in the ARM64 build. We have tested it on Hyper-V
during the ARM64 for Hyper-V enablement effort, with Hyper-V VPCI driver. We have
not tested it on the other ARM64 platforms. It should work not only in Azure,
but also in on-prem ARM64 Hyper-V hosts.
It's better to move Mellanox drivers to more general build location once they are tested
on more ARM64 platforms.
Wei
>
> Jess
>
> >> These changes in conf and std.hyperv files got missed in previous commit.
> >> Reviewed by: whu
> >> Tested by: whu
> >> Obtained from: Souradeep Chakrabarti <schakrabarti@microsoft.com>
> >> Sponsored by: Microsoft
> >> Differential Revision:
> >>
> https://nam06.safelinks.protection.outlook.com/?url=https%3A%2F%2Frev
> >>
> iews.freebsd.org%2FD38529&data=05%7C01%7Cweh%40microsoft.com%7C
> e49561
> >>
> fcb0054db78cfc08db244136f1%7C72f988bf86f141af91ab2d7cd011db47%7C1%
> 7C0
> >> %7C638143634775142011%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4w
> LjAwMDAiLCJ
> >>
> QIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdat
> a=Yu%
> >> 2BY%2FyEVCjC6dj8UKY6pYeVy%2BAsgxar5DBC9XQlexYo%3D&reserved=0
> >> ---
> >> sys/arm64/conf/std.hyperv | 12 +++++++++++-
> >> sys/conf/files.arm64 | 1 +
> >> 2 files changed, 12 insertions(+), 1 deletion(-)
> >>
> >> diff --git a/sys/arm64/conf/std.hyperv b/sys/arm64/conf/std.hyperv
> >> index f87082f15c96..b742c75da131 100644
> >> --- a/sys/arm64/conf/std.hyperv
> >> +++ b/sys/arm64/conf/std.hyperv
> >> @@ -3,4 +3,14 @@
> >> #
> >>
> >> #hyper-v support
> >> -device hyperv
> >> +device hyperv
> >> +
> >> +options COMPAT_LINUXKPI
> >> +device xz
> >> +
> >> +device mlx5
> >> +device mlxfw
> >> +device mlx5en
> >> +options RATELIMIT
> >> +options KERN_TLS
> >> +device firmware
> >> diff --git a/sys/conf/files.arm64 b/sys/conf/files.arm64 index
> >> 684cb8cb23ba..22dd267b2b42 100644
> >> --- a/sys/conf/files.arm64
> >> +++ b/sys/conf/files.arm64
> >> @@ -253,6 +253,7 @@ dev/hyperv/utilities/hv_kvp.c
> optional hyperv acpi
> >> dev/hyperv/netvsc/hn_nvs.c optional hyperv acpi
> >> dev/hyperv/netvsc/hn_rndis.c optional hyperv acpi
> >> dev/hyperv/netvsc/if_hn.c optional hyperv acpi
> >> +dev/hyperv/pcib/vmbus_pcib.c optional hyperv pci
> acpi
> >>
> >> dev/ice/if_ice_iflib.c optional ice pci \
> >> compile-with "${NORMAL_C} -I$S/dev/ice"
> >