• Michal Kubeček's avatar
    net: disable fragment reassembly if high_thresh is zero · 30759219
    Michal Kubeček authored
    Before commit 6d7b857d ("net: use lib/percpu_counter API for
    fragmentation mem accounting"), setting the reassembly high threshold
    to 0 prevented fragment reassembly as first fragment would be always
    evicted before second could be added to the queue. While inefficient,
    some users apparently relied on this method.
    
    Since the commit mentioned above, a percpu counter is used for
    reassembly memory accounting and high batch size avoids taking slow path
    in most common scenarios. As a result, a whole full sized packet can be
    reassembled without the percpu counter's main counter changing its value
    so that even with high_thresh set to 0, fragmented packets can be still
    reassembled and processed.
    
    Add explicit check preventing reassembly if high threshold is zero.
    Signed-off-by: default avatarMichal Kubecek <mkubecek@suse.cz>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    30759219
inet_fragment.c 10.3 KB