diff options
| author | Zwane Mwaikambo <zwane@linuxpower.ca> | 2004-06-27 09:34:47 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2004-06-27 09:34:47 -0700 |
| commit | aa299b22c63d650b23c9e14e03eb77b8e3017312 (patch) | |
| tree | 37d3f01bbecb66317394abc5697afc0ed2188f00 /include | |
| parent | 81c3dadecfdd71a2fff67fc43656490f8f0e29dd (diff) | |
[PATCH] Fix smbfs readdir oops
This has been reported a couple of times and is consistently causing some
folks grief, so Urban, would you mind terribly if i send this patch to at
least clear current bug reports. If there is additional stuff you want
ontop of this let me know and i can send a follow up patch.
The bug is that at times we haven't completed setting up the smb_ops so we
have a temporary 'null' ops in place until the connection is completely up.
With this setup it's possible to hit ->readdir() whilst the null ops are
still in place, so we put the process to sleep until the connection setup
is complete and then call the real ->readdir().
This patch addresses the bugzilla report at
http://bugzilla.kernel.org/show_bug.cgi?id=1671
Signed-off-by: Zwane Mwaikambo <zwane@linuxpower.ca>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include')
| -rw-r--r-- | include/linux/smb_fs_sb.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/include/linux/smb_fs_sb.h b/include/linux/smb_fs_sb.h index 976332af7949..5b4ae2cc445c 100644 --- a/include/linux/smb_fs_sb.h +++ b/include/linux/smb_fs_sb.h @@ -57,7 +57,8 @@ struct smb_sb_info { unsigned int generation; pid_t conn_pid; struct smb_conn_opt opt; - + wait_queue_head_t conn_wq; + int conn_complete; struct semaphore sem; unsigned char header[SMB_HEADER_LEN + 20*2 + 2]; |
