Lines Matching full:input
72 struct hv_enable_vp_vtl *input; in hv_vtl_bringup_vcpu() local
96 input = *this_cpu_ptr(hyperv_pcpu_input_arg); in hv_vtl_bringup_vcpu()
97 memset(input, 0, sizeof(*input)); in hv_vtl_bringup_vcpu()
99 input->partition_id = HV_PARTITION_ID_SELF; in hv_vtl_bringup_vcpu()
100 input->vp_index = target_vp_index; in hv_vtl_bringup_vcpu()
101 input->target_vtl.target_vtl = HV_VTL_MGMT; in hv_vtl_bringup_vcpu()
117 input->vp_context.rip = rip; in hv_vtl_bringup_vcpu()
118 input->vp_context.rsp = rsp; in hv_vtl_bringup_vcpu()
119 input->vp_context.rflags = 0x0000000000000002; in hv_vtl_bringup_vcpu()
120 input->vp_context.efer = __rdmsr(MSR_EFER); in hv_vtl_bringup_vcpu()
121 input->vp_context.cr0 = native_read_cr0(); in hv_vtl_bringup_vcpu()
122 input->vp_context.cr3 = __native_read_cr3(); in hv_vtl_bringup_vcpu()
123 input->vp_context.cr4 = native_read_cr4(); in hv_vtl_bringup_vcpu()
124 input->vp_context.msr_cr_pat = __rdmsr(MSR_IA32_CR_PAT); in hv_vtl_bringup_vcpu()
125 input->vp_context.idtr.limit = idt_ptr.size; in hv_vtl_bringup_vcpu()
126 input->vp_context.idtr.base = idt_ptr.address; in hv_vtl_bringup_vcpu()
127 input->vp_context.gdtr.limit = gdt_ptr.size; in hv_vtl_bringup_vcpu()
128 input->vp_context.gdtr.base = gdt_ptr.address; in hv_vtl_bringup_vcpu()
131 input->vp_context.cs.selector = __KERNEL_CS; in hv_vtl_bringup_vcpu()
132 input->vp_context.cs.base = 0; in hv_vtl_bringup_vcpu()
133 input->vp_context.cs.limit = 0xffffffff; in hv_vtl_bringup_vcpu()
134 input->vp_context.cs.attributes = 0xa09b; in hv_vtl_bringup_vcpu()
136 input->vp_context.ss.selector = __KERNEL_DS; in hv_vtl_bringup_vcpu()
137 input->vp_context.ss.base = 0; in hv_vtl_bringup_vcpu()
138 input->vp_context.ss.limit = 0xffffffff; in hv_vtl_bringup_vcpu()
139 input->vp_context.ss.attributes = 0xc093; in hv_vtl_bringup_vcpu()
142 input->vp_context.ldtr.selector = GDT_ENTRY_LDT * 8; in hv_vtl_bringup_vcpu()
143 input->vp_context.ldtr.base = hv_vtl_system_desc_base(ldt); in hv_vtl_bringup_vcpu()
144 input->vp_context.ldtr.limit = hv_vtl_system_desc_limit(ldt); in hv_vtl_bringup_vcpu()
145 input->vp_context.ldtr.attributes = 0x82; in hv_vtl_bringup_vcpu()
148 input->vp_context.tr.selector = GDT_ENTRY_TSS * 8; in hv_vtl_bringup_vcpu()
149 input->vp_context.tr.base = hv_vtl_system_desc_base(tss); in hv_vtl_bringup_vcpu()
150 input->vp_context.tr.limit = hv_vtl_system_desc_limit(tss); in hv_vtl_bringup_vcpu()
151 input->vp_context.tr.attributes = 0x8b; in hv_vtl_bringup_vcpu()
153 status = hv_do_hypercall(HVCALL_ENABLE_VP_VTL, input, NULL); in hv_vtl_bringup_vcpu()
163 status = hv_do_hypercall(HVCALL_START_VP, input, NULL); in hv_vtl_bringup_vcpu()
182 struct hv_get_vp_from_apic_id_in *input; in hv_vtl_apicid_to_vp_id() local
187 input = *this_cpu_ptr(hyperv_pcpu_input_arg); in hv_vtl_apicid_to_vp_id()
188 memset(input, 0, sizeof(*input)); in hv_vtl_apicid_to_vp_id()
189 input->partition_id = HV_PARTITION_ID_SELF; in hv_vtl_apicid_to_vp_id()
190 input->apic_ids[0] = apic_id; in hv_vtl_apicid_to_vp_id()
192 output = (u32 *)input; in hv_vtl_apicid_to_vp_id()
195 status = hv_do_hypercall(control, input, output); in hv_vtl_apicid_to_vp_id()