• Amit Cohen's avatar
    mlxsw: Mark high entropy key blocks · cad6431b
    Amit Cohen authored
    For 12 key blocks in the A-TCAM, rules are split into two records, which
    constitute two lookups. The two records are linked using a
    "large entry key ID".
    
    Due to a Spectrum-4 hardware issue, KVD entries that correspond to key
    blocks 0 to 5 of 12 key blocks A-TCAM entries will be placed in the same
    KVD pipe if they only differ in their "large entry key ID", as it is
    ignored. This results in a reduced scale. To reduce the probability of this
    issue, we can place key blocks with high entropy in blocks 0 to 5. The idea
    is to place blocks that are changed often in blocks 0 to 5, for
    example, key blocks that match on IPv4 addresses or the LSBs of IPv6
    addresses. Such placement will reduce the probability of these blocks to be
    same.
    
    Mark several blocks with 'high_entropy' flag, so later we will take into
    account this flag and place them in blocks 0 to 5.
    Signed-off-by: default avatarAmit Cohen <amcohen@nvidia.com>
    Reviewed-by: default avatarIdo Schimmel <idosch@nvidia.com>
    Signed-off-by: default avatarPetr Machata <petrm@nvidia.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    cad6431b
spectrum_acl_flex_keys.c 14.2 KB