Skip to content

Commit

Permalink
Do not configure BlueField NICs in DPU mode
Browse files Browse the repository at this point in the history
Signed-off-by: Ivan Kolodiazhnyi <[email protected]>
  • Loading branch information
e0ne committed Dec 16, 2024
1 parent d172b52 commit 60a777c
Showing 1 changed file with 10 additions and 0 deletions.
10 changes: 10 additions & 0 deletions pkg/vendors/mellanox/mellanox.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import (
"strconv"
"strings"

"github.com/pkg/errors"
kerrors "k8s.io/apimachinery/pkg/util/errors"
"sigs.k8s.io/controller-runtime/pkg/log"

Expand Down Expand Up @@ -162,6 +163,15 @@ func (m *mellanoxHelper) MlxResetFW(pciAddresses []string) error {
func (m *mellanoxHelper) MlxConfigFW(attributesToChange map[string]MlxNic) error {
log.Log.Info("mellanox-plugin configFW()")
for pciAddr, fwArgs := range attributesToChange {
bfMode, err := m.GetMellanoxBlueFieldMode(pciAddr)
if err != nil {
// NIC is not a DPU or mstconfig failed. It's safe to continue FW configuration
log.Log.V(2).Info("mellanox-plugin: configFW(): can't get DPU mode for NIC", "pciAddress", pciAddr)
}
if bfMode == BluefieldDpu {
// Host reboot won't re-load NIC firmware in DPU mode. To apply FW changes power cycle is required or mstfwreset could be used.
return errors.Errorf("NIC %s is in DPU mode. Firmware configuration changes are not supported in this mode.", pciAddr)
}
cmdArgs := []string{"-d", pciAddr, "-y", "set"}
if fwArgs.EnableSriov {
cmdArgs = append(cmdArgs, fmt.Sprintf("%s=True", EnableSriov))
Expand Down

0 comments on commit 60a777c

Please sign in to comment.