> -----Original Message----- > From: Intel-wired-lan <[email protected]> On Behalf Of > [email protected] > Sent: Sunday, September 7, 2025 12:05 PM > To: [email protected] > Cc: [email protected]; [email protected]; > [email protected]; [email protected]; Keller, Jacob E > <[email protected]>; Loktionov, Aleksandr > <[email protected]>; Nguyen, Anthony L > <[email protected]>; Kitszel, Przemyslaw > <[email protected]>; Mohammad Heib <[email protected]> > Subject: [Intel-wired-lan] [PATCH net-next, v4, 2/2] i40e: support generic > devlink param "max_mac_per_vf" > > From: Mohammad Heib <[email protected]> > > Currently the i40e driver enforces its own internally calculated per-VF MAC > filter limit, derived from the number of allocated VFs and available hardware > resources. This limit is not configurable by the administrator, which makes it > difficult to control how many MAC addresses each VF may use. > > This patch adds support for the new generic devlink runtime parameter > "max_mac_per_vf" which provides administrators with a way to cap the > number of MAC addresses a VF can use: > > - When the parameter is set to 0 (default), the driver continues to use > its internally calculated limit. > > - When set to a non-zero value, the driver applies this value as a strict > cap for VFs, overriding the internal calculation. > > Important notes: > > - The configured value is a theoretical maximum. Hardware limits may > still prevent additional MAC addresses from being added, even if the > parameter allows it. > > - Since MAC filters are a shared hardware resource across all VFs, > setting a high value may cause resource contention and starve other > VFs. > > - This change gives administrators predictable and flexible control over > VF resource allocation, while still respecting hardware limitations. > > - Previous discussion about this change: > https://lore.kernel.org/netdev/20250805134042.2604897-2- > [email protected] > https://lore.kernel.org/netdev/20250823094952.182181-1- > [email protected] > > Signed-off-by: Mohammad Heib <[email protected]> > Reviewed-by: Jacob Keller <[email protected]> > Reviewed-by: Aleksandr Loktionov <[email protected]> > Reviewed-by: Simon Horman <[email protected]> > --- > Documentation/networking/devlink/i40e.rst | 32 +++++++++++++ > drivers/net/ethernet/intel/i40e/i40e.h | 4 ++ > .../net/ethernet/intel/i40e/i40e_devlink.c | 48 ++++++++++++++++++- > .../ethernet/intel/i40e/i40e_virtchnl_pf.c | 31 ++++++++---- > 4 files changed, 105 insertions(+), 10 deletions(-) > > diff --git a/Documentation/networking/devlink/i40e.rst > b/Documentation/networking/devlink/i40e.rst > index d3cb5bb5197e..7480f0300fdb 100644 > --- a/Documentation/networking/devlink/i40e.rst > +++ b/Documentation/networking/devlink/i40e.rst > @@ -7,6 +7,38 @@ i40e devlink support
Tested-by: Rafal Romanowski <[email protected]>
