summaryrefslogtreecommitdiff
path: root/tools/sched
diff options
context:
space:
mode:
authorJeff Roberson <jeff@FreeBSD.org>2004-12-26 03:25:08 +0000
committerJeff Roberson <jeff@FreeBSD.org>2004-12-26 03:25:08 +0000
commit9a5c9d55e7103acf716cb19b1ca081405afa3928 (patch)
tree0afd33ea3e9405e3b46905daf67590044d2f4d09 /tools/sched
parentb0e485185fddd6ee87d332b4d260e6fec31c902b (diff)
downloadsrc-test2-9a5c9d55e7103acf716cb19b1ca081405afa3928.tar.gz
src-test2-9a5c9d55e7103acf716cb19b1ca081405afa3928.zip
Notes
Diffstat (limited to 'tools/sched')
-rw-r--r--tools/sched/schedgraph.py7
1 files changed, 4 insertions, 3 deletions
diff --git a/tools/sched/schedgraph.py b/tools/sched/schedgraph.py
index a59817669ac9..e56ee8a1ee9a 100644
--- a/tools/sched/schedgraph.py
+++ b/tools/sched/schedgraph.py
@@ -394,13 +394,14 @@ class StateEvent(Event):
next = self.nextstate()
if (self.skipself == 1 or next == None):
return (xpos)
- if (self.skipnext):
+ while (self.skipnext):
skipped = next
next.skipself = 1
next.real = 0
next = next.nextstate()
if (next == None):
next = skipped
+ self.skipnext -= 1
self.duration = next.timestamp - self.timestamp
delta = self.duration / canvas.ratio
l = canvas.create_rectangle(xpos, ypos,
@@ -487,7 +488,7 @@ class Yielding(StateEvent):
enabled = 1
def __init__(self, thread, cpu, timestamp, prio):
StateEvent.__init__(self, thread, cpu, timestamp)
- self.skipnext = 1
+ self.skipnext = 2
self.prio = prio
self.textadd(("prio:", self.prio, 0))
@@ -532,7 +533,7 @@ class Preempted(StateEvent):
enabled = 1
def __init__(self, thread, cpu, timestamp, prio, bythread):
StateEvent.__init__(self, thread, cpu, timestamp)
- self.skipnext = 1
+ self.skipnext = 2
self.prio = prio
self.linked = bythread
self.textadd(("prio:", self.prio, 0))