version 1.48.8.4, 2007/11/11 16:46:31 |
version 1.48.8.5, 2007/11/14 19:04:11 |
Line 767 ENTRY(cpu_switchto) |
|
Line 767 ENTRY(cpu_switchto) |
|
testl $LW_SYSTEM,L_FLAG(%edi) |
testl $LW_SYSTEM,L_FLAG(%edi) |
jnz 4f |
jnz 4f |
|
|
/* Is this process using RAS (restartable atomic sequences)? */ |
|
movl L_PROC(%edi),%eax |
|
cmpl $0,P_RASLIST(%eax) |
|
jne 5f |
|
|
|
/* Restore thread-private %fs/%gs descriptors. */ |
/* Restore thread-private %fs/%gs descriptors. */ |
movl PCB_FSD(%ebx), %eax |
movl PCB_FSD(%ebx), %eax |
movl PCB_FSD+4(%ebx), %edx |
movl PCB_FSD+4(%ebx), %edx |
Line 782 ENTRY(cpu_switchto) |
|
Line 777 ENTRY(cpu_switchto) |
|
movl %eax, (GUGS_SEL*8)(%ecx) |
movl %eax, (GUGS_SEL*8)(%ecx) |
movl %edx, (GUGS_SEL*8+4)(%ecx) |
movl %edx, (GUGS_SEL*8+4)(%ecx) |
|
|
|
/* Is this process using RAS (restartable atomic sequences)? */ |
|
movl L_PROC(%edi),%eax |
|
cmpl $0,P_RASLIST(%eax) |
|
jne 5f |
|
|
/* |
/* |
* Restore cr0 (including FPU state). Raise the IPL to IPL_IPI. |
* Restore cr0 (including FPU state). Raise the IPL to IPL_IPI. |
* FPU IPIs can alter the LWP's saved cr0. Dropping the priority |
* FPU IPIs can alter the LWP's saved cr0. Dropping the priority |