Lines Matching refs:ctxt
364 struct vcpu_guest_context *ctxt;
373 ctxt = kzalloc(sizeof(*ctxt), GFP_KERNEL);
374 if (ctxt == NULL)
381 ctxt->user_regs.fs = __KERNEL_PERCPU;
382 ctxt->user_regs.gs = __KERNEL_STACK_CANARY;
384 memset(&ctxt->fpu_ctxt, 0, sizeof(ctxt->fpu_ctxt));
387 ctxt->user_regs.eip = (unsigned long)cpu_bringup_and_idle;
388 ctxt->flags = VGCF_IN_KERNEL;
389 ctxt->user_regs.eflags = 0x1000; /* IOPL_RING1 */
390 ctxt->user_regs.ds = __USER_DS;
391 ctxt->user_regs.es = __USER_DS;
392 ctxt->user_regs.ss = __KERNEL_DS;
394 xen_copy_trap_info(ctxt->trap_ctxt);
396 ctxt->ldt_ents = 0;
404 ctxt->gdt_frames[0] = gdt_mfn;
405 ctxt->gdt_ents = GDT_ENTRIES;
407 ctxt->kernel_ss = __KERNEL_DS;
408 ctxt->kernel_sp = idle->thread.sp0;
411 ctxt->event_callback_cs = __KERNEL_CS;
412 ctxt->failsafe_callback_cs = __KERNEL_CS;
414 ctxt->gs_base_kernel = per_cpu_offset(cpu);
416 ctxt->event_callback_eip =
418 ctxt->failsafe_callback_eip =
420 ctxt->user_regs.cs = __KERNEL_CS;
430 ctxt->user_regs.eip = (unsigned long)xen_pvh_early_cpu_init;
431 ctxt->user_regs.rdi = cpu;
432 ctxt->user_regs.rsi = true; /* entry == true */
435 ctxt->user_regs.esp = idle->thread.sp0 - sizeof(struct pt_regs);
436 ctxt->ctrlreg[3] = xen_pfn_to_cr3(virt_to_mfn(swapper_pg_dir));
437 if (HYPERVISOR_vcpu_op(VCPUOP_initialise, cpu, ctxt))
440 kfree(ctxt);