Use msleep() instead of schedule_timeout() to guarantee the task delays as expected. TASK_INTERRUPTIBLE is used in the current code, but signals are not checked for, so I believe the change to msleep() is appropriate. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer --- kj-domen/fs/smbfs/proc.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN fs/smbfs/proc.c~msleep-fs_smbfs_proc fs/smbfs/proc.c --- kj/fs/smbfs/proc.c~msleep-fs_smbfs_proc 2005-03-02 10:43:15.000000000 +0100 +++ kj-domen/fs/smbfs/proc.c 2005-03-02 10:43:15.000000000 +0100 @@ -23,6 +23,7 @@ #include #include #include +#include #include @@ -2397,8 +2398,7 @@ smb_proc_readdir_long(struct file *filp, if (req->rq_rcls == ERRSRV && req->rq_err == ERRerror) { /* a damn Win95 bug - sometimes it clags if you ask it too fast */ - current->state = TASK_INTERRUPTIBLE; - schedule_timeout(HZ/5); + msleep(200); continue; } _