Commit b6ce34a9 authored by Linus Torvalds's avatar Linus Torvalds

Make the assembly-level code match the preempt_sched

changes
parent df6e3433
...@@ -238,10 +238,11 @@ ENTRY(resume_kernel) ...@@ -238,10 +238,11 @@ ENTRY(resume_kernel)
movl SYMBOL_NAME(irq_stat)+local_bh_count CPU_IDX, %ecx movl SYMBOL_NAME(irq_stat)+local_bh_count CPU_IDX, %ecx
addl SYMBOL_NAME(irq_stat)+local_irq_count CPU_IDX, %ecx addl SYMBOL_NAME(irq_stat)+local_irq_count CPU_IDX, %ecx
jnz restore_all jnz restore_all
incl TI_PRE_COUNT(%ebx) movl $PREEMPT_ACTIVE,TI_PRE_COUNT(%ebx)
sti sti
call SYMBOL_NAME(preempt_schedule) call SYMBOL_NAME(schedule)
jmp ret_from_intr movl $0,TI_PRE_COUNT(%ebx)
jmp restore_all
#endif #endif
# system call handler stub # system call handler stub
......
...@@ -47,6 +47,8 @@ struct thread_info { ...@@ -47,6 +47,8 @@ struct thread_info {
#endif #endif
#define PREEMPT_ACTIVE 0x4000000
/* /*
* macros/functions for gaining access to the thread information structure * macros/functions for gaining access to the thread information structure
*/ */
......
...@@ -91,7 +91,6 @@ extern unsigned long nr_running(void); ...@@ -91,7 +91,6 @@ extern unsigned long nr_running(void);
#define TASK_UNINTERRUPTIBLE 2 #define TASK_UNINTERRUPTIBLE 2
#define TASK_ZOMBIE 4 #define TASK_ZOMBIE 4
#define TASK_STOPPED 8 #define TASK_STOPPED 8
#define PREEMPT_ACTIVE 0x4000000
#define __set_task_state(tsk, state_value) \ #define __set_task_state(tsk, state_value) \
do { (tsk)->state = (state_value); } while (0) do { (tsk)->state = (state_value); } while (0)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment