⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hypercall.h

📁 xen虚拟机源代码安装包
💻 H
字号:
/****************************************************************************** * asm-x86/hypercall.h */#ifndef __ASM_X86_HYPERCALL_H__#define __ASM_X86_HYPERCALL_H__#include <public/physdev.h>#include <xen/types.h>/* * Both do_mmuext_op() and do_mmu_update(): * We steal the m.s.b. of the @count parameter to indicate whether this * invocation of do_mmu_update() is resuming a previously preempted call. */#define MMU_UPDATE_PREEMPTED          (~(~0U>>1))/* * This gets set to a non-zero value whenever hypercall_create_continuation() * is used (outside of multicall context; in multicall context the second call * from do_multicall() itself will have this effect). Internal callers of * hypercall handlers interested in this condition must clear the flag prior * to invoking the respective handler(s). */DECLARE_PER_CPU(char, hc_preempted);extern longdo_event_channel_op_compat(    XEN_GUEST_HANDLE(evtchn_op_t) uop);extern longdo_physdev_op_compat(    XEN_GUEST_HANDLE(physdev_op_t) uop);extern longdo_set_trap_table(    XEN_GUEST_HANDLE(const_trap_info_t) traps);extern intdo_mmu_update(    XEN_GUEST_HANDLE(mmu_update_t) ureqs,    unsigned int count,    XEN_GUEST_HANDLE(uint) pdone,    unsigned int foreigndom);extern longdo_set_gdt(    XEN_GUEST_HANDLE(ulong) frame_list,    unsigned int entries);extern longdo_stack_switch(    unsigned long ss,    unsigned long esp);extern longdo_fpu_taskswitch(    int set);extern longdo_set_debugreg(    int reg,    unsigned long value);extern unsigned longdo_get_debugreg(    int reg);extern longdo_update_descriptor(    u64 pa,    u64 desc);extern intdo_update_va_mapping(    unsigned long va,    u64 val64,    unsigned long flags);extern longdo_physdev_op(    int cmd, XEN_GUEST_HANDLE(void) arg);extern intdo_update_va_mapping_otherdomain(    unsigned long va,    u64 val64,    unsigned long flags,    domid_t domid);extern intdo_mmuext_op(    XEN_GUEST_HANDLE(mmuext_op_t) uops,    unsigned int count,    XEN_GUEST_HANDLE(uint) pdone,    unsigned int foreigndom);extern unsigned longdo_iret(    void);struct vcpu;extern longarch_do_vcpu_op(    int cmd, struct vcpu *v, XEN_GUEST_HANDLE(void) arg);extern intdo_kexec(    unsigned long op, unsigned arg1, XEN_GUEST_HANDLE(void) uarg);#ifdef __x86_64__extern longdo_set_callbacks(    unsigned long event_address,    unsigned long failsafe_address,    unsigned long syscall_address);extern longdo_set_segment_base(    unsigned int which,    unsigned long base);#elseextern longdo_set_callbacks(    unsigned long event_selector,    unsigned long event_address,    unsigned long failsafe_selector,    unsigned long failsafe_address);#endif#ifdef CONFIG_COMPATextern intcompat_physdev_op(    int cmd,    XEN_GUEST_HANDLE(void) arg);extern intarch_compat_vcpu_op(    int cmd, struct vcpu *v, XEN_GUEST_HANDLE(void) arg);#endif#endif /* __ASM_X86_HYPERCALL_H__ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -