Use msleep() instead of schedule_timeout() to guarantee the task delays as expected. The current code uses TASK_INTERRUPTIBLE, but does not check for signals, so I believe the change to msleep() is appropriate. Signed-off-by: Nishanth Aravamudan Signed-off-by: Domen Puncer --- kj-domen/fs/xfs/linux-2.6/xfs_buf.c | 4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff -puN fs/xfs/linux-2.6/xfs_buf.c~msleep-fs_xfs_linux-2.6_xfs_buf fs/xfs/linux-2.6/xfs_buf.c --- kj/fs/xfs/linux-2.6/xfs_buf.c~msleep-fs_xfs_linux-2.6_xfs_buf 2005-03-02 10:43:16.000000000 +0100 +++ kj-domen/fs/xfs/linux-2.6/xfs_buf.c 2005-03-02 10:43:16.000000000 +0100 @@ -54,6 +54,7 @@ #include #include #include +#include #include "xfs_linux.h" @@ -1779,8 +1780,7 @@ pagebuf_daemon( do { try_to_freeze(PF_FREEZE); - set_current_state(TASK_INTERRUPTIBLE); - schedule_timeout((xfs_buf_timer_centisecs * HZ) / 100); + msleep(xfs_buf_timer_centisecs * 10); age = (xfs_buf_age_centisecs * HZ) / 100; spin_lock(&pbd_delwrite_lock); _