public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* Disk priority dependend on nice level...
@ 2003-08-06 23:28 Pavel Machek
  2003-08-06 23:40 ` Pavel Machek
  2003-08-07  5:57 ` Jens Axboe
  0 siblings, 2 replies; 11+ messages in thread
From: Pavel Machek @ 2003-08-06 23:28 UTC (permalink / raw)
  To: cb-lkml, kernel list

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?]

^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2003-08-07 10:11 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2003-08-06 23:28 Disk priority dependend on nice level Pavel Machek
2003-08-06 23:40 ` Pavel Machek
2003-08-07  8:02   ` Jens Axboe
2003-08-07  9:20     ` queue reference counting Nick Piggin
2003-08-07  9:22       ` Jens Axboe
2003-08-07  9:26         ` Nick Piggin
2003-08-07 10:04     ` Disk priority dependend on nice level Pavel Machek
2003-08-07 10:09       ` Jens Axboe
2003-08-07  5:57 ` Jens Axboe
2003-08-07 10:01   ` Pavel Machek
2003-08-07 10:09     ` Jens Axboe

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox