Changeset 0dc2fec in mainline for kernel/arch/amd64/src/userspace.c
- Timestamp:
- 2016-05-22T19:19:43Z (9 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- b272c67a
- Parents:
- 153c7a29 (diff), af2254ec (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
kernel/arch/amd64/src/userspace.c
r153c7a29 r0dc2fec 48 48 void userspace(uspace_arg_t *kernel_uarg) 49 49 { 50 ipl_t ipl = interrupts_disable();50 uint64_t rflags = read_rflags(); 51 51 52 ipl &= ~(RFLAGS_CF | RFLAGS_PF | RFLAGS_AF | RFLAGS_ZF | RFLAGS_SF |53 RFLAGS_DF | RFLAGS_OF);52 rflags &= ~RFLAGS_NT; 53 rflags |= RFLAGS_IF; 54 54 55 55 asm volatile ( 56 56 "pushq %[udata_des]\n" 57 57 "pushq %[stack_top]\n" 58 "pushq %[ ipl]\n"58 "pushq %[rflags]\n" 59 59 "pushq %[utext_des]\n" 60 60 "pushq %[entry]\n" … … 67 67 [stack_top] "r" ((uint8_t *) kernel_uarg->uspace_stack + 68 68 kernel_uarg->uspace_stack_size), 69 [ ipl] "r" (ipl),69 [rflags] "r" (rflags), 70 70 [utext_des] "i" (GDT_SELECTOR(UTEXT_DES) | PL_USER), 71 71 [entry] "r" (kernel_uarg->uspace_entry),
Note:
See TracChangeset
for help on using the changeset viewer.