From: Ido Schimmel <ido...@idosch.org> Date: Sun, 13 Sep 2020 18:46:04 +0300
> From: Ido Schimmel <ido...@nvidia.com> > > Petr says: > > Internal buffer is a part of port headroom used for packets that are > mirrored due to triggers that the Spectrum ASIC considers "egress". Besides > ACL mirroring on port egresss this includes also packets mirrored due to > ECN marking. > > This patchset changes the way the internal mirroring buffer is reserved. > Currently the buffer reflects port MTU and speed accurately. In the future, > mlxsw should support dcbnl_setbuffer hook to allow the users to set buffer > sizes by hand. In that case, there might not be enough space for growth of > the internal mirroring buffer due to MTU and speed changes. While vetoing > MTU changes would be merely confusing, port speed changes cannot be vetoed, > and such change would simply lead to issues in packet mirroring. > > For these reasons, with these patches the internal mirroring buffer is > derived from maximum MTU and maximum speed achievable on the port. > > Patches #1 and #2 introduce a new callback to determine the maximum speed a > given port can achieve. > > With patches #3 and #4, the information about, respectively, maximum MTU > and maximum port speed, is kept in struct mlxsw_sp_port. > > In patch #5, maximum MTU and maximum speed are used to determine the size > of the internal buffer. MTU update and speed update hooks are dropped, > because they are no longer necessary. Series applied, thank you.