X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=block%2Fblk.h;h=24fcaeeaf6202b1e19de9f8e57477b97bccc4065;hb=14fc69723d3442ef46f8f82b3f481e82f06a346d;hp=0dce92c37496faf8b187741de6d169869019e9b7;hpb=891393745aad5c5acdb01b6ce61c08d4cc064649;p=linux-2.6-omap-h63xx.git diff --git a/block/blk.h b/block/blk.h index 0dce92c3749..24fcaeeaf62 100644 --- a/block/blk.h +++ b/block/blk.h @@ -70,6 +70,10 @@ void blk_queue_congestion_threshold(struct request_queue *q); int blk_dev_init(void); +void elv_quisce_start(struct request_queue *q); +void elv_quisce_end(struct request_queue *q); + + /* * Return the threshold (number of used requests) at which the queue is * considered to be congested. It include a little hysteresis to keep the @@ -102,18 +106,20 @@ static inline int blk_cpu_to_group(int cpu) const struct cpumask *mask = cpu_coregroup_mask(cpu); return cpumask_first(mask); #elif defined(CONFIG_SCHED_SMT) - return first_cpu(per_cpu(cpu_sibling_map, cpu)); + return cpumask_first(topology_thread_cpumask(cpu)); #else return cpu; #endif } -static inline int blk_do_io_stat(struct request_queue *q) +static inline int blk_do_io_stat(struct request *rq) { - if (q) - return blk_queue_io_stat(q); + struct gendisk *disk = rq->rq_disk; - return 0; + if (!disk || !disk->queue) + return 0; + + return blk_queue_io_stat(disk->queue) && (rq->cmd_flags & REQ_ELVPRIV); } #endif