Renamed thread field "preempt" in "ticks" for clearness.

git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11079 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
Giovanni Di Sirio 2017-11-27 10:22:40 +00:00
parent 56a33f50ed
commit 71ccd7eb14
6 changed files with 14 additions and 14 deletions

View File

@ -181,7 +181,7 @@ struct ch_thread {
* @brief Number of ticks remaining to this thread. * @brief Number of ticks remaining to this thread.
*/ */
#if (CH_CFG_TIME_QUANTUM > 0) || defined(__DOXYGEN__) #if (CH_CFG_TIME_QUANTUM > 0) || defined(__DOXYGEN__)
tslices_t preempt; tslices_t ticks;
#endif #endif
#if (CH_DBG_THREADS_PROFILING == TRUE) || defined(__DOXYGEN__) #if (CH_DBG_THREADS_PROFILING == TRUE) || defined(__DOXYGEN__)
/** /**
@ -694,7 +694,7 @@ static inline void chSchPreemption(void) {
tprio_t p2 = currp->prio; tprio_t p2 = currp->prio;
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
if (currp->preempt > (tslices_t)0) { if (currp->ticks > (tslices_t)0) {
if (p1 > p2) { if (p1 > p2) {
chSchDoRescheduleAhead(); chSchDoRescheduleAhead();
} }

View File

@ -45,9 +45,9 @@
"be zero or greater than one" "be zero or greater than one"
#endif #endif
#if (CH_CFG_ST_TIMEDELTA > 0) && (CH_CFG_TIME_QUANTUM > 0) //#if (CH_CFG_ST_TIMEDELTA > 0) && (CH_CFG_TIME_QUANTUM > 0)
#error "CH_CFG_TIME_QUANTUM not supported in tickless mode" //#error "CH_CFG_TIME_QUANTUM not supported in tickless mode"
#endif //#endif
#if (CH_CFG_ST_TIMEDELTA > 0) && (CH_DBG_THREADS_PROFILING == TRUE) #if (CH_CFG_ST_TIMEDELTA > 0) && (CH_DBG_THREADS_PROFILING == TRUE)
#error "CH_DBG_THREADS_PROFILING not supported in tickless mode" #error "CH_DBG_THREADS_PROFILING not supported in tickless mode"

View File

@ -108,7 +108,7 @@ ROMCONST chdebug_t ch_debug = {
(uint8_t)0, (uint8_t)0,
#endif #endif
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
(uint8_t)_offsetof(thread_t, preempt), (uint8_t)_offsetof(thread_t, ticks),
#else #else
(uint8_t)0, (uint8_t)0,
#endif #endif

View File

@ -297,7 +297,7 @@ void chSchGoSleepS(tstate_t newstate) {
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
/* The thread is renouncing its remaining time slices so it will have a new /* The thread is renouncing its remaining time slices so it will have a new
time quantum when it will wakeup.*/ time quantum when it will wakeup.*/
otp->preempt = (tslices_t)CH_CFG_TIME_QUANTUM; otp->ticks = (tslices_t)CH_CFG_TIME_QUANTUM;
#endif #endif
/* Next thread in ready list becomes current.*/ /* Next thread in ready list becomes current.*/
@ -485,7 +485,7 @@ bool chSchIsPreemptionRequired(void) {
if the first thread on the ready queue has a higher priority. if the first thread on the ready queue has a higher priority.
Otherwise, if the running thread has used up its time quantum, reschedule Otherwise, if the running thread has used up its time quantum, reschedule
if the first thread on the ready queue has equal or higher priority.*/ if the first thread on the ready queue has equal or higher priority.*/
return (currp->preempt > (tslices_t)0) ? (p1 > p2) : (p1 >= p2); return (currp->ticks > (tslices_t)0) ? (p1 > p2) : (p1 >= p2);
#else #else
/* If the round robin preemption feature is not enabled then performs a /* If the round robin preemption feature is not enabled then performs a
simpler comparison.*/ simpler comparison.*/
@ -518,7 +518,7 @@ void chSchDoRescheduleBehind(void) {
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
/* It went behind peers so it gets a new time quantum.*/ /* It went behind peers so it gets a new time quantum.*/
otp->preempt = (tslices_t)CH_CFG_TIME_QUANTUM; otp->ticks = (tslices_t)CH_CFG_TIME_QUANTUM;
#endif #endif
/* Placing in ready list behind peers.*/ /* Placing in ready list behind peers.*/
@ -582,14 +582,14 @@ void chSchDoReschedule(void) {
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
/* If CH_CFG_TIME_QUANTUM is enabled then there are two different scenarios /* If CH_CFG_TIME_QUANTUM is enabled then there are two different scenarios
to handle on preemption: time quantum elapsed or not.*/ to handle on preemption: time quantum elapsed or not.*/
if (currp->preempt == (tslices_t)0) { if (currp->ticks == (tslices_t)0) {
/* The thread consumed its time quantum so it is enqueued behind threads /* The thread consumed its time quantum so it is enqueued behind threads
with same priority level, however, it acquires a new time quantum.*/ with same priority level, however, it acquires a new time quantum.*/
otp = chSchReadyI(otp); otp = chSchReadyI(otp);
/* The thread being swapped out receives a new time quantum.*/ /* The thread being swapped out receives a new time quantum.*/
otp->preempt = (tslices_t)CH_CFG_TIME_QUANTUM; otp->ticks = (tslices_t)CH_CFG_TIME_QUANTUM;
} }
else { else {
/* The thread didn't consume all its time quantum so it is put ahead of /* The thread didn't consume all its time quantum so it is put ahead of

View File

@ -344,9 +344,9 @@ void chSysTimerHandlerI(void) {
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
/* Running thread has not used up quantum yet? */ /* Running thread has not used up quantum yet? */
if (currp->preempt > (tslices_t)0) { if (currp->ticks > (tslices_t)0) {
/* Decrement remaining quantum.*/ /* Decrement remaining quantum.*/
currp->preempt--; currp->ticks--;
} }
#endif #endif
#if CH_DBG_THREADS_PROFILING == TRUE #if CH_DBG_THREADS_PROFILING == TRUE

View File

@ -91,7 +91,7 @@ thread_t *_thread_init(thread_t *tp, const char *name, tprio_t prio) {
tp->state = CH_STATE_WTSTART; tp->state = CH_STATE_WTSTART;
tp->flags = CH_FLAG_MODE_STATIC; tp->flags = CH_FLAG_MODE_STATIC;
#if CH_CFG_TIME_QUANTUM > 0 #if CH_CFG_TIME_QUANTUM > 0
tp->preempt = (tslices_t)CH_CFG_TIME_QUANTUM; tp->ticks = (tslices_t)CH_CFG_TIME_QUANTUM;
#endif #endif
#if CH_CFG_USE_MUTEXES == TRUE #if CH_CFG_USE_MUTEXES == TRUE
tp->realprio = prio; tp->realprio = prio;