[PATCH] replace schedule_timeout() with msleep() (4 of 7)

[email protected] (Dave Kleikamp) Fri, 18 Feb 2005 17:07:18 -0600 (CST)
Newsgroups gmane.comp.file-systems.jfs.patches
Message-ID <[email protected]>
# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
#   2005/01/20 14:46:30-06:00 [email protected] 
#   JFS: replace schedule_timeout() with msleep()
#   
#   Use msleep() instead of schedule_timeout() to guarantee the task
#   delays as expected. The current code uses TASK_INTERRUPTIBLE;
#   however, it does not check for signals, so I do not think the
#   change to msleep() is necessarily bad.
#   
#   Signed-off-by: Nishanth Aravamudan <[email protected]>
#   Signed-off-by: Dave Kleikamp <[email protected]>
# 
diff -Nru a/fs/jfs/jfs_logmgr.c b/fs/jfs/jfs_logmgr.c
--- a/fs/jfs/jfs_logmgr.c	2005-02-18 17:02:16 -06:00
+++ b/fs/jfs/jfs_logmgr.c	2005-02-18 17:02:16 -06:00
@@ -67,6 +67,7 @@
 #include <linux/buffer_head.h>		/* for sync_blockdev() */
 #include <linux/bio.h>
 #include <linux/suspend.h>
+#include <linux/delay.h>
 #include "jfs_incore.h"
 #include "jfs_filsys.h"
 #include "jfs_metapage.h"
@@ -1612,8 +1613,7 @@
 	 */
 	if ((!list_empty(&log->cqueue)) || !list_empty(&log->synclist)) {
 		for (i = 0; i < 800; i++) {	/* Too much? */
-			current->state = TASK_INTERRUPTIBLE;
-			schedule_timeout(HZ / 4);
+			msleep(250);
 			if (list_empty(&log->cqueue) &&
 			    list_empty(&log->synclist))
 				break;