-
Notifications
You must be signed in to change notification settings - Fork 510
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
metal: hw enablement of 10G+ networking equipment #2379
Conversation
Reorder intels networking configuration so that they are all in proximity to each other and in the same order as their definition in the Kconfig file for easier comparability. No functional change. Signed-off-by: Leonard Foerster <[email protected]>
The main drivers we are interested in here are I40E, ICE, and FM10K. Explicitly setting the resulting options as follows: * Disable DCB for I40E, we likely do not need DCB * Disable IB support for I40E (and ICE on 5.15): *5.10: INFINIBAND_I40IW *5.15: INFINIBAND_IRDMA * Enable PLDMFW firmware update format through PLDM needed by ICE Signed-off-by: Leonard Foerster <[email protected]>
We are interested in AMD_XGBE. Explicitly disable DCE for that driver as we likely do not need DCB. In addition this driver will select option AMD_XGBE_HAVE_ECC on X86 platforms. As this config fragment is used on both x86 and aarch64 platforms we can not explicitly set it. Signed-off-by: Leonard Foerster <[email protected]>
Signed-off-by: Leonard Foerster <[email protected]>
For now disable support for DCB for these devices as well as the Infiniband support, Crypto offloading capabilities, and the ISCSI target driver. Signed-off-by: Leonard Foerster <[email protected]>
In order for the Emulex driver to be of use we additionally need to add the chipset drivers for BE2, BE3, Lancer and Skyhawk chipsets. Signed-off-by: Leonard Foerster <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎉 🌮
Signed-off-by: Leonard Foerster <[email protected]>
Explicitly set the resulting DCA support for that driver to its default value. Signed-off-by: Leonard Foerster <[email protected]>
Signed-off-by: Leonard Foerster <[email protected]>
The main drivers here are SFC and SFC_FALCON. In addition configure the options for these drivers to support HWMON (SFC_MCDI_MON) and SRIOV. Disable SFC_MCDI_LOGGING as that is not needed (debug logging for communication between driver and firmware). Signed-off-by: Leonard Foerster <[email protected]>
42fad36
to
51cbc93
Compare
Force push fixed the two bugs I had missed before sending this. Currently running the |
Update kernel-config diff in the gist linked above and the statistics after the last change. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🎸
Issue number: #2361 #2246
Closes #2361
Description of changes:
Enable 10G+ networking equipment for the metal variants for most vendors. While there is some cards that provide quite some advanced network features we are aiming for a meaningful minimum here, by enabling mostly the base Ethernet capabilities for these devices.
For advanced features we will have a separate discussion on if we need these out of the box or if those are valuable at all in the Bottlerocket use case. Features that I have identified and will discuss with the team: Infiniband support, DCB, Fibre Channel, SCSI/ISCSI (target) capabilities, offloading capabilities for some of the hardware (crypto offloading, flow processing).
As it is easier to add those features in later than to add them now and disable them later I have aimed for as few special features as possible.
For any Options resulting from enabling a specific device family I have explicitly set those to the desired setting.
The following options are not set explicitly as those are device families that the kernel has disabled by default:
Let's discuss if we we want to set those explicitly or if we are fine with these devices being disabled implicitly. Given that all these drivers are for older hardware it is reasonable to assume that they will not change their default down the line.
In addition there is option
AMD_XGBE_HAVE_ECC
which is set conditionally based on the architecture beingX86
whenAMD_XGBE
is set. As we currently do not have separate config fragments foraarch64
andx86_64
we can not explicitly set it without causing trouble.Testing done:
Built some versions and compared resulting kernel configurations with the tooling currently under review in #2368
The full resulting config diff-report can be found in https://gist.github.com/foersleo/918342143826d4291c6d84bcc4e18194
Terms of contribution:
By submitting this pull request, I agree that this contribution is dual-licensed under the terms of both the Apache License, version 2.0, and the MIT license.