• Ido Schimmel's avatar
    mlxsw: spectrum: Track sampling triggers in a hash table · 1b9fc42e
    Ido Schimmel authored
    Currently, mlxsw supports a single sampling trigger type (i.e., received
    packet). When sampling is configured on an ingress port, the sampling
    parameters (e.g., pointer to the psample group) are stored as an
    attribute of the port, so that they could be passed to
    psample_sample_packet() when a sampled packet is trapped to the CPU.
    
    Subsequent patches are going to add more types of sampling triggers,
    making it difficult to maintain the current scheme.
    
    Instead, store all the active sampling triggers with their associated
    parameters in a hash table. That way, more trigger types can be easily
    added.
    
    The next patch will flip mlxsw to use the hash table instead of the
    current scheme.
    Signed-off-by: default avatarIdo Schimmel <idosch@nvidia.com>
    Reviewed-by: default avatarJiri Pirko <jiri@nvidia.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    1b9fc42e
spectrum.c 133 KB