Hi!
I ported `subj` to 2.6.0-test2. I do not yet have idea if it works,
but it compiles ;-).
Pavel
--- clean/drivers/block/deadline-iosched.c 2003-07-27 22:31:10.000000000 +0200
+++ linux/drivers/block/deadline-iosched.c 2003-08-07 01:26:47.000000000 +0200
@@ -17,6 +17,7 @@
#include <linux/compiler.h>
#include <linux/hash.h>
#include <linux/rbtree.h>
+#include <linux/sched.h>
/*
* See Documentation/deadline-iosched.txt
@@ -106,6 +107,19 @@
#define RQ_DATA(rq) ((struct deadline_rq *) (rq)->elevator_private)
/*
+ * scale_deadline
+ */
+static int scale_deadline(int default_deadline)
+{
+ int prio = current->static_prio - MAX_RT_PRIO;
+ /* make priorities higher than nice -10 equal to nice -10 */
+ if (prio < 10)
+ prio = 10;
+ /* scale the deadline according to priority */
+ return default_deadline * prio/20;
+}
+
+/*
* the back merge hash support functions
*/
static inline void __deadline_del_drq_hash(struct deadline_rq *drq)
@@ -303,7 +317,7 @@
/*
* set expire time (only used for reads) and add to fifo list
*/
- drq->expires = jiffies + dd->fifo_expire[data_dir];
+ drq->expires = jiffies + scale_deadline(dd->fifo_expire[data_dir]);
list_add_tail(&drq->fifo, &dd->fifo_list[data_dir]);
}
-- When do you have a heart between your knees? [Johanka's followup: and *two* hearts?] - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Thu Aug 07 2003 - 22:00:35 EST