• Sven Wegener's avatar
    ipvs: Fix possible deadlock in estimator code · 8ab19ea3
    Sven Wegener authored
    There is a slight chance for a deadlock in the estimator code. We can't call
    del_timer_sync() while holding our lock, as the timer might be active and
    spinning for the lock on another cpu. Work around this issue by using
    try_to_del_timer_sync() and releasing the lock. We could actually delete the
    timer outside of our lock, as the add and kill functions are only every called
    from userspace via [gs]etsockopt() and are serialized by a mutex, but better
    make this explicit.
    Signed-off-by: default avatarSven Wegener <sven.wegener@stealer.net>
    Cc: stable <stable@kernel.org>
    Acked-by: default avatarSimon Horman <horms@verge.net.au>
    8ab19ea3
ip_vs_est.c 4.65 KB