Changeset 057e77f in mainline for kernel/generic/src/time/clock.c


Ignore:
Timestamp:
2012-07-16T15:31:56Z (12 years ago)
Author:
Adam Hraska <adam.hraska+hos@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
0cf813d
Parents:
0594c7ea
Message:

preemption_disable: Removed failed attempt at rescheduling once preemption is enabled (and needed). Once again, preemption_enable() never reschedules.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • kernel/generic/src/time/clock.c

    r0594c7ea r057e77f  
    212212                irq_spinlock_unlock(&THREAD->lock, false);
    213213               
    214                 if (ticks == 0) {
    215                         if (PREEMPTION_ENABLED) {
    216                                 scheduler();
     214                if (ticks == 0 && PREEMPTION_ENABLED) {
     215                        scheduler();
    217216#ifdef CONFIG_UDEBUG
    218                                 /*
    219                                 * Give udebug chance to stop the thread
    220                                 * before it begins executing userspace code.
    221                                 */
    222                                 istate_t *istate = THREAD->udebug.uspace_state;
    223                                 if ((istate) && (istate_from_uspace(istate)))
    224                                         udebug_before_thread_runs();
     217                        /*
     218                         * Give udebug chance to stop the thread
     219                         * before it begins executing userspace code.
     220                         */
     221                        istate_t *istate = THREAD->udebug.uspace_state;
     222                        if ((istate) && (istate_from_uspace(istate)))
     223                                udebug_before_thread_runs();
    225224#endif
    226                         } else {
    227                                 preemption_set_needed();
    228                         }
    229225                }
    230226        }
Note: See TracChangeset for help on using the changeset viewer.