From: Jeffrey Altman Date: Mon, 10 Apr 2006 18:56:30 +0000 (+0000) Subject: STABLE14-windows-remove-active_vcp-20060410 X-Git-Tag: openafs-stable-1_4_1~4 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=de60742535733527c3f23172ad441a38369a3b27;p=packages%2Fo%2Fopenafs.git STABLE14-windows-remove-active_vcp-20060410 The 'active_vcp' variable is no longer being used for any useful purpose and is the center of a race condition that could lead to an undercount of references to 'vcp' objects. Remove it. (cherry picked from commit f1ef60c020feffb73b2aee4c1871afba039afb67) --- diff --git a/src/WINNT/afsd/smb.c b/src/WINNT/afsd/smb.c index efed6f12b..95505130c 100644 --- a/src/WINNT/afsd/smb.c +++ b/src/WINNT/afsd/smb.c @@ -38,8 +38,6 @@ static char *illegalChars = "\\/:*?\"<>|"; BOOL isWindows2000 = FALSE; -smb_vc_t *active_vcp = NULL; - int smbShutdownFlag = 0; int smb_LogoffTokenTransfer; @@ -7342,25 +7340,6 @@ void smb_DispatchPacket(smb_vc_t *vcp, smb_packet_t *inp, smb_packet_t *outp, smb_SendPacket(vcp, outp); thrd_Decrement(&ongoingOps); - if (!(vcp->flags & SMB_VCFLAG_ALREADYDEAD)) { - if (active_vcp != vcp) { - if (active_vcp) { - osi_Log2(smb_logp, - "Replacing active_vcp %x with %x", active_vcp, vcp); - smb_ReleaseVC(active_vcp); - } - smb_HoldVC(vcp); - lock_ObtainWrite(&smb_globalLock); - active_vcp = vcp; - lock_ReleaseWrite(&smb_globalLock); - } - last_msg_time = GetTickCount(); - } else if (active_vcp == vcp) { /* the vcp is dead */ - smb_ReleaseVC(active_vcp); - lock_ObtainWrite(&smb_globalLock); - active_vcp = NULL; - lock_ReleaseWrite(&smb_globalLock); - } return; }