aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNick Piggin <nickpiggin@yahoo.com.au>2007-05-08 03:26:34 -0400
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-05-08 14:15:03 -0400
commitc6a632a2b610c1bc123f1d258d688e8fe5cc70dd (patch)
treeb43e9dffcc1ad012955483f22141676f199f6930
parente97cb3e28ce2fdd3b06a65f67d00462d86929008 (diff)
as: fix antic_expire check
Fix units mismatch (jiffies vs msecs) in as-iosched.c, spotted by Xiaoning Ding <dingxn@cse.ohio-state.edu>. Signed-off-by: Nick Piggin <npiggin@suse.de> Cc: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--block/as-iosched.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/block/as-iosched.c b/block/as-iosched.c
index ef126277b4b3..640aa839d63f 100644
--- a/block/as-iosched.c
+++ b/block/as-iosched.c
@@ -569,7 +569,7 @@ static void as_update_iohist(struct as_data *ad, struct as_io_context *aic,
569static int as_close_req(struct as_data *ad, struct as_io_context *aic, 569static int as_close_req(struct as_data *ad, struct as_io_context *aic,
570 struct request *rq) 570 struct request *rq)
571{ 571{
572 unsigned long delay; /* milliseconds */ 572 unsigned long delay; /* jiffies */
573 sector_t last = ad->last_sector[ad->batch_data_dir]; 573 sector_t last = ad->last_sector[ad->batch_data_dir];
574 sector_t next = rq->sector; 574 sector_t next = rq->sector;
575 sector_t delta; /* acceptable close offset (in sectors) */ 575 sector_t delta; /* acceptable close offset (in sectors) */
@@ -578,11 +578,11 @@ static int as_close_req(struct as_data *ad, struct as_io_context *aic,
578 if (ad->antic_status == ANTIC_OFF || !ad->ioc_finished) 578 if (ad->antic_status == ANTIC_OFF || !ad->ioc_finished)
579 delay = 0; 579 delay = 0;
580 else 580 else
581 delay = ((jiffies - ad->antic_start) * 1000) / HZ; 581 delay = jiffies - ad->antic_start;
582 582
583 if (delay == 0) 583 if (delay == 0)
584 delta = 8192; 584 delta = 8192;
585 else if (delay <= 20 && delay <= ad->antic_expire) 585 else if (delay <= (20 * HZ / 1000) && delay <= ad->antic_expire)
586 delta = 8192 << delay; 586 delta = 8192 << delay;
587 else 587 else
588 return 1; 588 return 1;