Mike Galbraith
d95f412200
sched: Add yield_to(task, preempt) functionality
...
Currently only implemented for fair class tasks.
Add a yield_to_task method() to the fair scheduling class. allowing the
caller of yield_to() to accelerate another thread in it's thread group,
task group.
Implemented via a scheduler hint, using cfs_rq->next to encourage the
target being selected. We can rely on pick_next_entity to keep things
fair, so noone can accelerate a thread that has already used its fair
share of CPU time.
This also means callers should only call yield_to when they really
mean it. Calling it too often can result in the scheduler just
ignoring the hint.
Signed-off-by: Rik van Riel <riel@redhat.com >
Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com >
Signed-off-by: Mike Galbraith <efault@gmx.de >
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl >
LKML-Reference: <20110201095051.4ddb7738@annuminas.surriel.com >
Signed-off-by: Ingo Molnar <mingo@elte.hu >
2011-02-03 14:20:33 +01:00
..
2010-12-22 18:57:02 +01:00
2010-10-15 15:53:27 +02:00
2011-01-21 11:55:31 +01:00
2011-01-13 20:15:35 -08:00
2011-01-19 20:08:15 +01:00
2011-01-20 13:32:33 +01:00
2010-08-09 16:48:42 -04:00
2010-07-14 11:29:46 +02:00
2010-10-30 02:18:32 -04:00
2010-10-30 01:42:19 -04:00
2010-11-03 13:49:58 -04:00
2010-10-30 01:42:19 -04:00
2010-10-30 01:41:57 -04:00
2010-10-30 08:45:43 -04:00
2010-10-27 18:03:08 -07:00
2011-01-14 09:08:29 -08:00
2010-09-14 16:08:45 -07:00
2010-10-15 15:53:27 +02:00
2011-01-06 11:11:50 -08:00
2010-10-29 04:17:06 -04:00
2010-10-27 18:03:12 -07:00
2010-08-09 20:45:05 -07:00
2011-01-11 11:02:13 -08:00
2011-01-13 17:32:43 -08:00
2010-12-24 15:02:40 +01:00
2010-11-10 13:27:50 +01:00
2011-01-15 12:45:00 -08:00
2010-09-09 18:57:24 -07:00
2011-01-13 10:05:56 -08:00
2010-08-17 09:11:52 +02:00
2010-12-16 11:36:43 +01:00
2010-12-18 15:54:48 +01:00
2010-10-29 12:56:13 -04:00
2010-11-19 11:54:40 -08:00
2010-11-01 15:38:34 -04:00
2010-10-01 10:50:58 -07:00
2010-08-17 18:07:43 -07:00
2011-01-07 17:02:58 -08:00
2010-05-21 09:37:31 -07:00
2011-01-07 15:55:45 +01:00
2011-01-13 08:03:16 -08:00
2010-11-10 10:23:58 +01:00
2011-01-20 13:32:33 +01:00
2011-01-13 08:03:08 -08:00
2010-12-23 09:56:00 -05:00
2010-11-26 15:05:34 +01:00
2010-10-27 18:03:09 -07:00
2010-08-04 15:23:14 -07:00
2011-01-12 03:06:19 -05:00
2011-01-24 14:32:51 +10:30
2011-01-21 22:08:16 +01:00
2010-08-19 17:18:02 -07:00
2010-11-15 22:45:22 +01:00
2010-11-10 13:07:06 +01:00
2010-10-21 17:30:06 +02:00
2011-01-13 08:03:09 -08:00
2010-10-15 15:53:27 +02:00
2010-10-27 18:03:12 -07:00
2010-11-12 07:55:31 -08:00
2010-10-07 09:43:11 +02:00
2010-11-29 22:01:56 -08:00
2011-01-14 04:58:08 -08:00
2010-10-07 10:41:08 -07:00
2010-12-17 12:34:08 -08:00
2010-11-29 22:01:58 -08:00
2011-01-07 17:02:58 -08:00
2010-12-17 12:34:20 -08:00
2010-11-05 08:21:34 -07:00
2010-12-17 10:01:09 -08:00
2010-10-19 11:29:56 +02:00
2011-01-18 15:09:42 +01:00
2011-01-18 15:09:42 +01:00
2010-11-23 10:29:08 +01:00
2010-07-17 12:06:22 +02:00
2010-07-17 12:06:22 +02:00
2011-02-03 14:20:33 +01:00
2011-02-03 14:20:33 +01:00
2010-11-18 13:27:46 +01:00
2011-01-26 12:33:22 +01:00
2011-01-26 12:33:22 +01:00
2010-10-24 13:29:01 +02:00
2011-01-26 12:33:22 +01:00
2011-02-03 14:20:33 +01:00
2010-10-27 18:03:12 -07:00
2011-01-20 18:30:37 -08:00
2011-01-26 12:33:20 +01:00
2011-01-14 04:56:49 -08:00
2010-10-26 16:52:15 -07:00
2010-09-23 17:03:55 +10:00
2011-01-13 08:03:07 -08:00
2011-01-13 10:05:56 -08:00
2010-10-15 14:42:24 -07:00
2011-02-03 14:20:33 +01:00
2011-01-13 08:03:19 -08:00
2010-10-14 08:55:27 +02:00
2011-01-26 12:33:20 +01:00
2011-01-06 10:42:43 -08:00
2010-10-18 19:58:56 +02:00
2010-10-27 18:03:17 -07:00
2011-01-13 08:03:18 -08:00
2010-12-29 11:31:38 -08:00
2010-10-26 17:32:41 -07:00
2011-01-07 17:02:58 -08:00
2010-06-29 10:07:14 +02:00
2011-01-11 16:03:14 +01:00