/DragonOS/kernel/src/arch/x86_64/asm/ |
H A D | entry.S | 149 leaq do_divide_error(%rip), %rax // 获取中断服务程序的地址 158 leaq do_debug(%rip), %rax // 获取中断服务程序的地址 169 leaq do_nmi(%rip), %rax 177 leaq do_int3(%rip), %rax // 获取中断服务程序的地址 185 leaq do_overflow(%rip), %rax // 获取中断服务程序的地址 193 leaq do_bounds(%rip), %rax // 获取中断服务程序的地址 201 leaq do_undefined_opcode(%rip), %rax // 获取中断服务程序的地址 209 leaq do_dev_not_avaliable(%rip), %rax // 获取中断服务程序的地址 216 leaq do_double_fault(%rip), %rax // 获取中断服务程序的地址 224 leaq do_coprocessor_segment_overrun(%rip), %rax // 获取中断服务程序的地址 [all …]
|
H A D | head.S | 284 movq switch_to_start64(%rip), %rax 313 lgdt GDT_POINTER(%rip) //这里我没搞明白rip相对寻址, 看了文档,大概是用来实现PIC的(position independent code) 316 lidt IDT_POINTER(%rip) 318 movq GDT_POINTER(%rip), %r12 327 movq head_stack_start(%rip), %rsp 395 movq _apu_boot_tmp_stack_top_addr(%rip), %rsp 400 movq switch_seg(%rip), %rax 428 movq head_stack_start(%rip), %rsp 432 movq _apu_boot_tmp_stack_top_addr(%rip), %rsp 439 leaq GDT_Table(%rip), %r8 [all …]
|
/DragonOS/kernel/src/arch/x86_64/interrupt/ |
H A D | trap.rs | 120 regs.rip, in do_divide_error() 134 regs.rip, in do_debug() 148 regs.rip, in do_nmi() 162 regs.rip, in do_int3() 176 regs.rip, in do_overflow() 190 regs.rip, in do_bounds() 204 regs.rip, in do_undefined_opcode() 218 regs.rip, in do_dev_not_avaliable() 232 regs.rip, in do_double_fault() 246 regs.rip, in do_coprocessor_segment_overrun() [all …]
|
H A D | mod.rs | 129 pub rip: ::core::ffi::c_ulong, field 164 rip: 0, in new() 183 self.rip = pc as u64; in set_pc() 192 (self.rip - 1) as usize in break_address() 196 self.rip as usize in debug_address()
|
/DragonOS/kernel/src/arch/x86_64/ |
H A D | kprobe.rs | 32 pub rip: ::core::ffi::c_ulong, field 58 rip: trap_frame.rip, in from()
|
/DragonOS/user/apps/test_kvm/ |
H A D | main.c | 46 uint64_t rip, rflags; member 105 regs.rip = user_entry; in main()
|
/DragonOS/kernel/src/arch/x86_64/process/ |
H A D | mod.rs | 70 rip: usize, field 104 rip: 0, in new() 248 rip: self.rip, in clone_all() 348 new_arch_guard.rip = kthread_bootstrap_stage1_func_addr; in copy_thread() 350 new_arch_guard.rip = ret_from_intr as usize; in copy_thread() 396 (*prev_arch).rip = switch_back as usize; in switch_process() 496 off_rip = const(offset_of!(ArchPCBInfo, rip)), in switch_to_inner() 543 arch_guard.rip = new_rip.data(); in arch_switch_to_user()
|
H A D | kthread.rs | 42 frame.rip = kernel_thread_bootstrap_stage1 as usize as u64; in __inner_create()
|
H A D | syscall.rs | 108 regs.rip = load_result.entry_point().data() as u64; in do_execve()
|
/DragonOS/kernel/src/process/ |
H A D | ptrace.h | 26 unsigned long rip; member
|
/DragonOS/kernel/src/debug/traceback/ |
H A D | traceback.c | 63 uint64_t ret_addr = regs->rip; in traceback()
|
/DragonOS/kernel/src/arch/x86_64/kvm/vmx/ |
H A D | vmexit.rs | 267 fn adjust_rip(rip: u64) -> Result<(), SystemError> { in adjust_rip() 269 vmx_vmwrite(VmcsFields::GUEST_RIP as u32, rip + instruction_length)?; in adjust_rip()
|
H A D | vcpu.rs | 65 pub rip: usize, field 161 rip: 0, in new() 256 vmx_vmwrite(VmcsFields::GUEST_RIP as u32, self.vcpu_ctx.rip as u64)?; in vmcs_init_guest() 257 debug!("vmcs init guest rip: {:#x}", self.vcpu_ctx.rip as u64); in vmcs_init_guest()
|
/DragonOS/kernel/src/virt/kvm/ |
H A D | vcpu_dev.rs | 183 kvm_regs.rip, kvm_regs.rflags, kvm_regs.regs[6], kvm_regs.regs[0], in ioctl()
|
/DragonOS/kernel/src/arch/x86_64/ipc/ |
H A D | signal.rs | 670 trap_frame.rip = unsafe { (*frame).handler as u64 }; in setup_frame()
|