Changeset View
Changeset View
Standalone View
Standalone View
head/sys/amd64/amd64/vm_machdep.c
Show First 20 Lines • Show All 230 Lines • ▼ Show 20 Lines | cpu_fork(td1, p2, td2, flags) | ||||
* pcb2->pcb_flags: cloned above. | * pcb2->pcb_flags: cloned above. | ||||
* pcb2->pcb_onfault: cloned above (always NULL here?). | * pcb2->pcb_onfault: cloned above (always NULL here?). | ||||
* pcb2->pcb_[fg]sbase: cloned above | * pcb2->pcb_[fg]sbase: cloned above | ||||
*/ | */ | ||||
/* Setup to release spin count in fork_exit(). */ | /* Setup to release spin count in fork_exit(). */ | ||||
td2->td_md.md_spinlock_count = 1; | td2->td_md.md_spinlock_count = 1; | ||||
td2->td_md.md_saved_flags = PSL_KERNEL | PSL_I; | td2->td_md.md_saved_flags = PSL_KERNEL | PSL_I; | ||||
td2->td_md.md_invl_gen.gen = 0; | |||||
/* As an i386, do not copy io permission bitmap. */ | /* As an i386, do not copy io permission bitmap. */ | ||||
pcb2->pcb_tssp = NULL; | pcb2->pcb_tssp = NULL; | ||||
/* New segment registers. */ | /* New segment registers. */ | ||||
set_pcb_flags(pcb2, PCB_FULL_IRET); | set_pcb_flags(pcb2, PCB_FULL_IRET); | ||||
/* Copy the LDT, if necessary. */ | /* Copy the LDT, if necessary. */ | ||||
▲ Show 20 Lines • Show All 487 Lines • Show Last 20 Lines |