pir_desc
struct pir_desc *pir_desc;
struct pir_desc *pir_desc;
pir_desc = vlapic_vtx->pir_desc;
atomic_store_rel_long(&pir_desc->pending, 1);
atomic_store_rel_long(&pir_desc->pending, 1);
atomic_set_int(&pir_desc->pir[idx], mask);
if (atomic_cmpset_long(&pir_desc->pending, 0, 1) != 0) {
struct pir_desc *pir_desc;
pir_desc = vlapic_vtx->pir_desc;
if (atomic_cmpset_long(&pir_desc->pending, 1, 0) == 0) {
ASSERT0(pir_desc->pir[0] & 0xffff);
atomic_readandclear_int(&pir_desc->pir[i]);
vlapic_vtx->pir_desc = &vmx->pir_desc[vcpuid];
vm_paddr_t pir_desc_pa = vtophys(&vmx->pir_desc[i]);
CTASSERT(sizeof (struct pir_desc) == 64);
struct pir_desc pir_desc[VM_MAXCPU];
CTASSERT((offsetof(struct vmx, pir_desc[0]) & 63) == 0);