[rtems commit] rtems: rtems_rate_monotonic_postponed_job_count()
Sebastian Huber
sebh at rtems.org
Tue Jan 24 14:05:45 UTC 2017
Module: rtems
Branch: master
Commit: b8d6eb719ad016b8e0a7752619a5004960b9711d
Changeset: http://git.rtems.org/rtems/commit/?id=b8d6eb719ad016b8e0a7752619a5004960b9711d
Author: Sebastian Huber <sebastian.huber at embedded-brains.de>
Date: Tue Jan 24 15:05:22 2017 +0100
rtems: rtems_rate_monotonic_postponed_job_count()
Use proper locking in SMP configurations.
Update #2795.
---
cpukit/rtems/src/ratemonperiod.c | 19 +++++++------------
1 file changed, 7 insertions(+), 12 deletions(-)
diff --git a/cpukit/rtems/src/ratemonperiod.c b/cpukit/rtems/src/ratemonperiod.c
index d4746cb..97547e2 100644
--- a/cpukit/rtems/src/ratemonperiod.c
+++ b/cpukit/rtems/src/ratemonperiod.c
@@ -302,22 +302,17 @@ static rtems_status_code _Rate_monotonic_Block_while_expired(
return RTEMS_TIMEOUT;
}
-/*
- * This helper function is prepared for run-time monitoring.
- */
-uint32_t rtems_rate_monotonic_postponed_job_count(
- rtems_id period_id
-)
+uint32_t rtems_rate_monotonic_postponed_job_count( rtems_id period_id )
{
- Rate_monotonic_Control *the_period;
- ISR_lock_Context lock_context;
- Thread_Control *owner;
+ Rate_monotonic_Control *the_period;
+ ISR_lock_Context lock_context;
+ uint32_t jobs;
the_period = _Rate_monotonic_Get( period_id, &lock_context );
_Assert( the_period != NULL );
- uint32_t jobs = the_period->postponed_jobs;
- owner = the_period->owner;
- _Rate_monotonic_Release( owner, &lock_context );
+
+ jobs = the_period->postponed_jobs;
+ _Rate_monotonic_Release( the_period, &lock_context );
return jobs;
}
More information about the vc
mailing list