Skip to content

Commit

Permalink
[CIFS] hold ses sem on tcp session reconnect during mount
Browse files Browse the repository at this point in the history
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
  • Loading branch information
Steve French committed Jan 3, 2008
1 parent 9783758 commit 88e7d70
Showing 1 changed file with 3 additions and 3 deletions.
6 changes: 3 additions & 3 deletions fs/cifs/connect.c
Original file line number Diff line number Diff line change
Expand Up @@ -1966,13 +1966,13 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb,
pSesInfo = existingCifsSes;
cFYI(1, ("Existing smb sess found (status=%d)",
pSesInfo->status));
down(&pSesInfo->sesSem);
if (pSesInfo->status == CifsNeedReconnect) {
cFYI(1, ("Session needs reconnect"));
down(&pSesInfo->sesSem);
rc = cifs_setup_session(xid, pSesInfo,
cifs_sb->local_nls);
up(&pSesInfo->sesSem);
}
up(&pSesInfo->sesSem);
} else if (!rc) {
cFYI(1, ("Existing smb sess not found"));
pSesInfo = sesInfoAlloc();
Expand Down Expand Up @@ -3522,7 +3522,7 @@ cifs_umount(struct super_block *sb, struct cifs_sb_info *cifs_sb)
sesInfoFree(ses);

FreeXid(xid);
return rc; /* BB check if we should always return zero here */
return rc;
}

int cifs_setup_session(unsigned int xid, struct cifsSesInfo *pSesInfo,
Expand Down

0 comments on commit 88e7d70

Please sign in to comment.