summaryrefslogtreecommitdiff
path: root/block/bfq.h
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-10-20 00:10:27 -0300
committerAndré Fabian Silva Delgado <emulatorman@parabola.nu>2016-10-20 00:10:27 -0300
commitd0b2f91bede3bd5e3d24dd6803e56eee959c1797 (patch)
tree7fee4ab0509879c373c4f2cbd5b8a5be5b4041ee /block/bfq.h
parente914f8eb445e8f74b00303c19c2ffceaedd16a05 (diff)
Linux-libre 4.8.2-gnupck-4.8.2-gnu
Diffstat (limited to 'block/bfq.h')
-rw-r--r--block/bfq.h28
1 files changed, 15 insertions, 13 deletions
diff --git a/block/bfq.h b/block/bfq.h
index 49d28b9dc..00142fcce 100644
--- a/block/bfq.h
+++ b/block/bfq.h
@@ -1,5 +1,5 @@
/*
- * BFQ-v8r3 for 4.7.0: data structures and common functions prototypes.
+ * BFQ-v8r3 for 4.8.0: data structures and common functions prototypes.
*
* Based on ideas and code from CFQ:
* Copyright (C) 2003 Jens Axboe <axboe@kernel.dk>
@@ -7,7 +7,9 @@
* Copyright (C) 2008 Fabio Checconi <fabio@gandalf.sssup.it>
* Paolo Valente <paolo.valente@unimore.it>
*
- * Copyright (C) 2010 Paolo Valente <paolo.valente@unimore.it>
+ * Copyright (C) 2015 Paolo Valente <paolo.valente@unimore.it>
+ *
+ * Copyright (C) 2016 Paolo Valente <paolo.valente@linaro.org>
*/
#ifndef _BFQ_H
@@ -55,8 +57,8 @@ struct bfq_service_tree {
/* tree for idle entities (i.e., not backlogged, with V <= F_i)*/
struct rb_root idle;
- struct bfq_entity *first_idle; /* idle entity with minimum F_i */
- struct bfq_entity *last_idle; /* idle entity with maximum F_i */
+ struct bfq_entity *first_idle; /* idle entity with minimum F_i */
+ struct bfq_entity *last_idle; /* idle entity with maximum F_i */
u64 vtime; /* scheduler virtual time */
/* scheduler weight sum; active and idle entities contribute to it */
@@ -158,7 +160,7 @@ struct bfq_entity {
/* budget, used also to calculate F_i: F_i = S_i + @budget / @weight */
int budget;
- unsigned int weight; /* weight of the queue */
+ unsigned int weight; /* weight of the queue */
unsigned int new_weight; /* next weight if a change is in progress */
/* original weight, used to implement weight boosting */
@@ -304,11 +306,11 @@ struct bfq_queue {
* struct bfq_ttime - per process thinktime stats.
*/
struct bfq_ttime {
- unsigned long last_end_request; /* completion time of last request */
+ u64 last_end_request; /* completion time of last request */
- unsigned long ttime_total; /* total process thinktime */
+ u64 ttime_total; /* total process thinktime */
unsigned long ttime_samples; /* number of thinktime samples */
- unsigned long ttime_mean; /* average process thinktime */
+ u64 ttime_mean; /* average process thinktime */
};
@@ -417,7 +419,7 @@ struct bfq_data {
* Timer set when idling (waiting) for the next request from
* the queue in service.
*/
- struct timer_list idle_slice_timer;
+ struct hrtimer idle_slice_timer;
/* delayed work to restart dispatching on the request queue */
struct work_struct unplug_work;
@@ -449,13 +451,13 @@ struct bfq_data {
* Timeout for async/sync requests; when it fires, requests
* are served in fifo order.
*/
- unsigned int bfq_fifo_expire[2];
+ u64 bfq_fifo_expire[2];
/* weight of backward seeks wrt forward ones */
unsigned int bfq_back_penalty;
/* maximum allowed backward seek */
unsigned int bfq_back_max;
/* maximum idling time */
- unsigned int bfq_slice_idle;
+ u64 bfq_slice_idle;
/* last time CLASS_IDLE was served */
u64 bfq_class_idle_last_service;
@@ -788,7 +790,7 @@ bfq_entity_service_tree(struct bfq_entity *entity)
if (bfqq)
bfq_log_bfqq(bfqq->bfqd, bfqq,
"entity_service_tree %p %d",
- sched_data->service_tree + idx, idx) ;
+ sched_data->service_tree + idx, idx);
#ifdef CONFIG_BFQ_GROUP_IOSCHED
else {
struct bfq_group *bfqg =
@@ -796,7 +798,7 @@ bfq_entity_service_tree(struct bfq_entity *entity)
bfq_log_bfqg((struct bfq_data *)bfqg->bfqd, bfqg,
"entity_service_tree %p %d",
- sched_data->service_tree + idx, idx) ;
+ sched_data->service_tree + idx, idx);
}
#endif
return sched_data->service_tree + idx;