• Tom Parkin's avatar
    l2tp: WARN_ON rather than BUG_ON in l2tp_session_queue_purge · 493048f5
    Tom Parkin authored
    l2tp_session_queue_purge is used during session shutdown to drop any
    skbs queued for reordering purposes according to L2TP dataplane rules.
    
    The BUG_ON in this function checks the session magic feather in an
    attempt to catch lifetime bugs.
    
    Rather than crashing the kernel with a BUG_ON, we can simply WARN_ON and
    refuse to do anything more -- in the worst case this could result in a
    leak.  However this is highly unlikely given that the session purge only
    occurs from codepaths which have obtained the session by means of a lookup
    via. the parent tunnel and which check the session "dead" flag to
    protect against shutdown races.
    
    While we're here, have l2tp_session_queue_purge return void rather than
    an integer, since neither of the callsites checked the return value.
    Signed-off-by: default avatarTom Parkin <tparkin@katalix.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    493048f5
l2tp_core.c 47.1 KB