From b8d6eb719ad016b8e0a7752619a5004960b9711d Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 24 Jan 2017 15:05:22 +0100 Subject: 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(-) (limited to 'cpukit/rtems') diff --git a/cpukit/rtems/src/ratemonperiod.c b/cpukit/rtems/src/ratemonperiod.c index d4746cbc6b..97547e2c77 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; } -- cgit v1.2.3