aboutsummaryrefslogtreecommitdiffstats
path: root/native/src/blocking/mpcp.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'native/src/blocking/mpcp.cpp')
-rw-r--r--native/src/blocking/mpcp.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/native/src/blocking/mpcp.cpp b/native/src/blocking/mpcp.cpp
index 5d2b1ff..d210595 100644
--- a/native/src/blocking/mpcp.cpp
+++ b/native/src/blocking/mpcp.cpp
@@ -181,7 +181,7 @@ static unsigned long mpcp_remote_blocking(unsigned int res_id,
181 // last bound 181 // last bound
182 interval = blocking; 182 interval = blocking;
183 // Bail out if it doesn't converge. 183 // Bail out if it doesn't converge.
184 if (interval > tsk->get_response()) 184 if (interval > std::max(tsk->get_response(), tsk->get_period()))
185 return UNLIMITED; 185 return UNLIMITED;
186 186
187 blocking = mpcp_remote_blocking(res_id, interval, 187 blocking = mpcp_remote_blocking(res_id, interval,
@@ -279,9 +279,8 @@ BlockingBounds* mpcp_bounds(const ResourceSharingInfo& info,
279 remote = mpcp_remote_blocking(&tsk, clusters, responses); 279 remote = mpcp_remote_blocking(&tsk, clusters, responses);
280 280
281 // 5) Determine arrival blocking for each task. 281 // 5) Determine arrival blocking for each task.
282 if (remote != UNLIMITED) 282 local = mpcp_arrival_blocking(&tsk, clusters[tsk.get_cluster()],
283 local = mpcp_arrival_blocking(&tsk, clusters[tsk.get_cluster()], 283 use_virtual_spinning);
284 use_virtual_spinning);
285 284
286 // 6) Sum up blocking: remote blocking + arrival blocking. 285 // 6) Sum up blocking: remote blocking + arrival blocking.
287 results[i].total_length = remote + local; 286 results[i].total_length = remote + local;