Direction flag
- ack assumes that the direction flag in eflags is clear when assigning two structures. It is implemented by a call to a built-in function which is like memcpy but needs the flag to be clear otherwise rubish is copied. This patch fixes the kernel entries.
This commit is contained in:
parent
a16308efdb
commit
1dd6f5573a
@ -472,9 +472,6 @@ exception_entry:
|
|||||||
TEST_INT_IN_KERNEL(12, exception_entry_nested)
|
TEST_INT_IN_KERNEL(12, exception_entry_nested)
|
||||||
|
|
||||||
exception_entry_from_user:
|
exception_entry_from_user:
|
||||||
|
|
||||||
cld
|
|
||||||
|
|
||||||
SAVE_PROCESS_CTX(8)
|
SAVE_PROCESS_CTX(8)
|
||||||
|
|
||||||
/* stop user process cycles */
|
/* stop user process cycles */
|
||||||
|
|||||||
@ -121,6 +121,9 @@
|
|||||||
* value on the stack - error code and the exception number
|
* value on the stack - error code and the exception number
|
||||||
*/
|
*/
|
||||||
#define SAVE_PROCESS_CTX_NON_LAZY(displ) \
|
#define SAVE_PROCESS_CTX_NON_LAZY(displ) \
|
||||||
|
\
|
||||||
|
cld /* set the direction flag to a known state */ ;\
|
||||||
|
\
|
||||||
push %ebp ;\
|
push %ebp ;\
|
||||||
;\
|
;\
|
||||||
movl (CURR_PROC_PTR + 4 + displ)(%esp), %ebp ;\
|
movl (CURR_PROC_PTR + 4 + displ)(%esp), %ebp ;\
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user