<dec f='src/src/sys/arch/xen/include/xen-public/vcpu.h' l='70'/>
<use f='src/src/sys/arch/xen/x86/cpu.c' l='1006' u='c'/>
<doc f='src/src/sys/arch/xen/include/xen-public/vcpu.h' l='56'>/*
 * Bring down a VCPU (i.e., make it non-runnable).
 * There are a few caveats that callers should observe:
 *  1. This operation may return, and VCPU_is_up may return false, before the
 *     VCPU stops running (i.e., the command is asynchronous). It is a good
 *     idea to ensure that the VCPU has entered a non-critical loop before
 *     bringing it down. Alternatively, this operation is guaranteed
 *     synchronous if invoked by the VCPU itself.
 *  2. After a VCPU is initialised, there is currently no way to drop all its
 *     references to domain memory. Even a VCPU that is down still holds
 *     memory references via its pagetable base pointer and GDT. It is good
 *     practise to move a VCPU onto an &apos;idle&apos; or default page table, LDT and
 *     GDT before bringing it down.
 */</doc>
<use f='src/src/sys/arch/xen/x86/xen_ipi.c' l='214' u='c'/>
