FRAMEBUFFER: increase FB clock. Minor clean up of deadline io sched and cpu clock ...
/block/deadline-iosched.c
blob:533df3ccdfa07289572b07cefbb40ddf9ede1dac -> blob:5139c0ea1864a858b6072febcf636a71e9bc6f13
--- block/deadline-iosched.c
+++ block/deadline-iosched.c
@@ -17,10 +17,10 @@
/*
* See Documentation/block/deadline-iosched.txt
*/
-static const int read_expire = HZ / 4; /* max time before a read is submitted. */
+static const int read_expire = HZ / 2; /* max time before a read is submitted. */
static const int write_expire = 5 * HZ; /* ditto for writes, these limits are SOFT! */
-static const int writes_starved = 4; /* max times reads can starve a write */
-static const int fifo_batch = 1; /* # of sequential requests treated as one
+static const int writes_starved = 2; /* max times reads can starve a write */
+static const int fifo_batch = 16; /* # of sequential requests treated as one
by the above parameters. For throughput. */
struct deadline_data {
@@ -77,8 +77,10 @@ static void
deadline_add_rq_rb(struct deadline_data *dd, struct request *rq)
{
struct rb_root *root = deadline_rb_root(dd, rq);
+ struct request *__alias;
- elv_rb_add(root, rq);
+ while (unlikely(__alias = elv_rb_add(root, rq)))
+ deadline_move_request(dd, __alias);
}
static inline void
@@ -352,7 +354,7 @@ static void *deadline_init_queue(struct
dd->fifo_expire[READ] = read_expire;
dd->fifo_expire[WRITE] = write_expire;
dd->writes_starved = writes_starved;
- dd->front_merges = 0;
+ dd->front_merges = 1;
dd->fifo_batch = fifo_batch;
return dd;
}