diff options
author | Shaohua Li <shaohua.li@intel.com> | 2011-08-01 10:31:06 +0200 |
---|---|---|
committer | Jens Axboe <jaxboe@fusionio.com> | 2011-08-01 10:31:06 +0200 |
commit | e5a94f56845bb4b272d82e84b5a1e2080b07ba82 (patch) | |
tree | 884fcc9d3c7cab28416084ba793a181d37858ca1 /block/blk-throttle.c | |
parent | loop: fix deadlock when sysfs and LOOP_CLR_FD race against each other (diff) | |
download | linux-e5a94f56845bb4b272d82e84b5a1e2080b07ba82.tar.xz linux-e5a94f56845bb4b272d82e84b5a1e2080b07ba82.zip |
blk-throttle: correctly determine sync bio
read request is always sync. Using rw_is_sync() to determine
if a bio is sync.
Signed-off-by: Shaohua Li <shaohua.li@intel.com>
Signed-off-by: Jens Axboe <jaxboe@fusionio.com>
Diffstat (limited to 'block/blk-throttle.c')
-rw-r--r-- | block/blk-throttle.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/block/blk-throttle.c b/block/blk-throttle.c index f6a794120505..a19f58c6fc3a 100644 --- a/block/blk-throttle.c +++ b/block/blk-throttle.c @@ -746,7 +746,7 @@ static bool tg_may_dispatch(struct throtl_data *td, struct throtl_grp *tg, static void throtl_charge_bio(struct throtl_grp *tg, struct bio *bio) { bool rw = bio_data_dir(bio); - bool sync = bio->bi_rw & REQ_SYNC; + bool sync = rw_is_sync(bio->bi_rw); /* Charge the bio to the group */ tg->bytes_disp[rw] += bio->bi_size; @@ -1150,7 +1150,7 @@ int blk_throtl_bio(struct request_queue *q, struct bio **biop) if (tg_no_rule_group(tg, rw)) { blkiocg_update_dispatch_stats(&tg->blkg, bio->bi_size, - rw, bio->bi_rw & REQ_SYNC); + rw, rw_is_sync(bio->bi_rw)); rcu_read_unlock(); return 0; } |