• Nogah Frankel's avatar
    mlxsw: Create a different trap group list for each device · 117b0dad
    Nogah Frankel authored
    Trap groups can be used to control traps priority, both in terms of
    which trap "wins" if a packet matches two traps (priority) and in terms
    of packets from which trap group will be scheduled to the cpu first (tc).
    They can also be used to set rate limiters (policers) on them (will be
    added in the next patches).
    
    Currently, we support two trap groups. In Spectrum we want a better
    resolution, so every protocol / flow will have a different trap group,
    so we can control its parameters separately. Once the policers will be
    implemented, it will also allow us limit the rate of each protocol by
    itself.
    
    This patch change the trap group list to include:
    * the emad trap group, which is shared for all the devices.
    * Switchx2's trap groups, which are a copy of the current trap groups.
    * Spectrum's new trap groups, in order to match the above guidelines.
    (Switchib is using only the emad trap group, so it require no changes).
    
    This patch also includes new configuration for Spectrum's trap groups,
    with primary priority order within them.
    Signed-off-by: default avatarNogah Frankel <nogahf@mellanox.com>
    Signed-off-by: default avatarJiri Pirko <jiri@mellanox.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    117b0dad
spectrum.c 126 KB