diff options
author | Steve French <sfrench@us.ibm.com> | 2008-05-06 18:27:16 -0400 |
---|---|---|
committer | Steve French <sfrench@us.ibm.com> | 2008-05-06 18:27:16 -0400 |
commit | cf432eb50ffd03572c08a006f44e0069957cf300 (patch) | |
tree | 2d8101320fa03c4a1be7e4226e2f1e57e7e26a91 /fs | |
parent | dea570e08a69b14808b2cab56d6b0dda72145fa6 (diff) |
[CIFS] cleanup cifsd completion
Was a holdover from the old kernel_thread based cifsd
code. We needed to know that the thread had set the task variable
before proceeding. Now that kthread_run returns the new task, this
doesn't appear to be needed anymore.
As best I can tell, this sleep was intended to try to prevent
cifs_umount from freeing the cifsSesInfo struct before cifsd had
exited. Now that cifsd is using the kthread API, we know that
when kthread_stop returns that cifsd has exited, so I don't
think this is needed any longer.
Signed-off-by: Jeff Layton <jlayton@redhat.com>
Acked-by: Christop Hellwig <hch@infradead.org>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/cifs/connect.c | 6 |
1 files changed, 0 insertions, 6 deletions
diff --git a/fs/cifs/connect.c b/fs/cifs/connect.c index f2259db075c4..957998e8477e 100644 --- a/fs/cifs/connect.c +++ b/fs/cifs/connect.c | |||
@@ -49,8 +49,6 @@ | |||
49 | #define CIFS_PORT 445 | 49 | #define CIFS_PORT 445 |
50 | #define RFC1001_PORT 139 | 50 | #define RFC1001_PORT 139 |
51 | 51 | ||
52 | static DECLARE_COMPLETION(cifsd_complete); | ||
53 | |||
54 | extern void SMBNTencrypt(unsigned char *passwd, unsigned char *c8, | 52 | extern void SMBNTencrypt(unsigned char *passwd, unsigned char *c8, |
55 | unsigned char *p24); | 53 | unsigned char *p24); |
56 | 54 | ||
@@ -356,7 +354,6 @@ cifs_demultiplex_thread(struct TCP_Server_Info *server) | |||
356 | atomic_inc(&tcpSesAllocCount); | 354 | atomic_inc(&tcpSesAllocCount); |
357 | length = tcpSesAllocCount.counter; | 355 | length = tcpSesAllocCount.counter; |
358 | write_unlock(&GlobalSMBSeslock); | 356 | write_unlock(&GlobalSMBSeslock); |
359 | complete(&cifsd_complete); | ||
360 | if (length > 1) | 357 | if (length > 1) |
361 | mempool_resize(cifs_req_poolp, length + cifs_min_rcv, | 358 | mempool_resize(cifs_req_poolp, length + cifs_min_rcv, |
362 | GFP_KERNEL); | 359 | GFP_KERNEL); |
@@ -1980,7 +1977,6 @@ cifs_mount(struct super_block *sb, struct cifs_sb_info *cifs_sb, | |||
1980 | kfree(srvTcp->hostname); | 1977 | kfree(srvTcp->hostname); |
1981 | goto out; | 1978 | goto out; |
1982 | } | 1979 | } |
1983 | wait_for_completion(&cifsd_complete); | ||
1984 | rc = 0; | 1980 | rc = 0; |
1985 | memcpy(srvTcp->workstation_RFC1001_name, | 1981 | memcpy(srvTcp->workstation_RFC1001_name, |
1986 | volume_info.source_rfc1001_name, 16); | 1982 | volume_info.source_rfc1001_name, 16); |
@@ -3554,8 +3550,6 @@ cifs_umount(struct super_block *sb, struct cifs_sb_info *cifs_sb) | |||
3554 | cifs_sb->prepath = NULL; | 3550 | cifs_sb->prepath = NULL; |
3555 | kfree(tmp); | 3551 | kfree(tmp); |
3556 | if (ses) | 3552 | if (ses) |
3557 | schedule_timeout_interruptible(msecs_to_jiffies(500)); | ||
3558 | if (ses) | ||
3559 | sesInfoFree(ses); | 3553 | sesInfoFree(ses); |
3560 | 3554 | ||
3561 | FreeXid(xid); | 3555 | FreeXid(xid); |