• Sven Wegener's avatar
    ipvs: Fix race conditions in lblc scheduler · 39ac50d0
    Sven Wegener authored
    We can't access the cache entry outside of our critical read-locked region,
    because someone may free that entry. And we also need to check in the critical
    region wether the destination is still available, i.e. it's not in the trash.
    If we drop our reference counter, the destination can be purged from the trash
    at any time. Our caller only guarantees that no destination is moved to the
    trash, while we are scheduling. Also there is no need for our own rwlock,
    there is already one in the service structure for use in the schedulers.
    Signed-off-by: default avatarSven Wegener <sven.wegener@stealer.net>
    Signed-off-by: default avatarSimon Horman <horms@verge.net.au>
    39ac50d0
ip_vs_lblc.c 14 KB