• Florian Westphal's avatar
    netfilter: conntrack: small refactoring of conntrack seq_printf · 245cfdca
    Florian Westphal authored
    The iteration process is lockless, so we test if the conntrack object is
    eligible for printing (e.g. is AF_INET) after obtaining the reference
    count.
    
    Once we put all conntracks into same hash table we might see more
    entries that need to be skipped.
    
    So add a helper and first perform the test in a lockless fashion
    for fast skip.
    
    Once we obtain the reference count, just repeat the check.
    
    Note that this refactoring also includes a missing check for unconfirmed
    conntrack entries due to slab rcu object re-usage, so they need to be
    skipped since they are not part of the listing.
    Signed-off-by: default avatarFlorian Westphal <fw@strlen.de>
    Signed-off-by: default avatarPablo Neira Ayuso <pablo@netfilter.org>
    245cfdca
nf_conntrack_l3proto_ipv4_compat.c 11 KB