[PATCH] block core: use round_jiffies on timer to reduce wakeups

From: Randy Dunlap
Date: Tue Nov 10 2009 - 19:23:26 EST


From: Randy Dunlap <randy.dunlap@xxxxxxxxxx>

Use round_jiffies() variant to schedule the timer along with
other timer wakeups on the same CPU.

Source file also needs to include jiffies.h since it uses
functions or macros from it.

Signed-off-by: Randy Dunlap <randy.dunlap@xxxxxxxxxx>
---
block/blk-core.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

--- lnx-2632-rc6.orig/block/blk-core.c
+++ lnx-2632-rc6/block/blk-core.c
@@ -17,6 +17,7 @@
#include <linux/bio.h>
#include <linux/blkdev.h>
#include <linux/highmem.h>
+#include <linux/jiffies.h>
#include <linux/mm.h>
#include <linux/kernel_stat.h>
#include <linux/string.h>
@@ -212,7 +213,8 @@ void blk_plug_device(struct request_queu
return;

if (!queue_flag_test_and_set(QUEUE_FLAG_PLUGGED, q)) {
- mod_timer(&q->unplug_timer, jiffies + q->unplug_delay);
+ mod_timer(&q->unplug_timer,
+ round_jiffies_up(jiffies + q->unplug_delay));
trace_block_plug(q);
}
}
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/