• Shyam Prasad N's avatar
    cifs: use the chans_need_reconnect bitmap for reconnect status · f486ef8e
    Shyam Prasad N authored
    We use the concept of "binding" when one of the secondary channel
    is in the process of connecting/reconnecting to the server. Till this
    binding process completes, and the channel is bound to an existing session,
    we redirect traffic from other established channels on the binding channel,
    effectively blocking all traffic till individual channels get reconnected.
    
    With my last set of commits, we can get rid of this binding serialization.
    We now have a bitmap of connection states for each channel. We will use
    this bitmap instead for tracking channel status.
    
    Having a bitmap also now enables us to keep the session alive, as long
    as even a single channel underneath is alive.
    
    Unfortunately, this also meant that we need to supply the tcp connection
    info for the channel during all negotiate and session setup functions.
    These changes have resulted in a slightly bigger code churn.
    However, I expect perf and robustness improvements in the mchan scenario
    after this change.
    Signed-off-by: default avatarShyam Prasad N <sprasad@microsoft.com>
    Signed-off-by: default avatarSteve French <stfrench@microsoft.com>
    f486ef8e
cifs_spnego.c 5.66 KB