summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJens Axboe <jens.axboe@oracle.com>2007-01-12 12:20:26 +0100
committerLinus Torvalds <torvalds@woody.osdl.org>2007-01-12 10:46:49 -0800
commitc43a5082a61f351248c5f015ee5d4641309bd96e (patch)
tree1a01acbf9d606c392f85449fe6d6af06154a9346
parentd39c9400ae0d60aaaf534b1ad860a9bc1413d8af (diff)
downloadlinux-c43a5082a61f351248c5f015ee5d4641309bd96e.tar.gz
linux-c43a5082a61f351248c5f015ee5d4641309bd96e.tar.bz2
linux-c43a5082a61f351248c5f015ee5d4641309bd96e.zip
[PATCH] blktrace: only add a bounce trace when we really bounce
Currently we issue a bounce trace when __blk_queue_bounce() is called, but that merely means that the device has a lower dma mask than the higher pages in the system. The bio itself may still be lower pages. So move the bounce trace into __blk_queue_bounce(), when we know there will actually be page bouncing. Signed-off-by: Jens Axboe <jens.axboe@oracle.com> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
-rw-r--r--mm/bounce.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/mm/bounce.c b/mm/bounce.c
index e4b62d2a4024..643efbe82402 100644
--- a/mm/bounce.c
+++ b/mm/bounce.c
@@ -237,6 +237,8 @@ static void __blk_queue_bounce(request_queue_t *q, struct bio **bio_orig,
if (!bio)
return;
+ blk_add_trace_bio(q, *bio_orig, BLK_TA_BOUNCE);
+
/*
* at least one page was bounced, fill in possible non-highmem
* pages
@@ -291,8 +293,6 @@ void blk_queue_bounce(request_queue_t *q, struct bio **bio_orig)
pool = isa_page_pool;
}
- blk_add_trace_bio(q, *bio_orig, BLK_TA_BOUNCE);
-
/*
* slow path
*/