• T
    SUNRPC: Fix TCP rebinding logic · 67a391d7
    Trond Myklebust 提交于
    Currently the TCP rebinding logic assumes that if we're not using a
    reserved port, then we don't need to reconnect on the same port if a
    disconnection event occurs. This breaks most RPC duplicate reply cache
    implementations.
    
    Also take into account the fact that xprt_min_resvport and
    xprt_max_resvport may change while we're reconnecting, since the user may
    change them at any time via the sysctls. Ensure that we check the port
    boundaries every time we loop in xs_bind4/xs_bind6. Also ensure that if the
    boundaries change, we only scan the ports a maximum of 2 times.
    Signed-off-by: NTrond Myklebust <Trond.Myklebust@netapp.com>
    67a391d7
xprtsock.c 51.6 KB