static void VMCIUtilCidUpdate(VMCIId subID, // IN: VMCI_EventData *eventData, // IN: void *clientData) // IN: { VMCIEventPayload_Context *evPayload = VMCIEventDataPayload(eventData); if (subID != ctxUpdateSubID) { VMCI_DEBUG_LOG(4, (LGPFX"Invalid subscriber (ID=0x%x).\n", subID)); return; } if (eventData == NULL || evPayload->contextID == VMCI_INVALID_ID) { VMCI_DEBUG_LOG(4, (LGPFX"Invalid event data.\n")); return; } VMCI_LOG((LGPFX"Updating context from (ID=0x%x) to (ID=0x%x) on event " "(type=%d).\n", Atomic_Read(&vmContextID), evPayload->contextID, eventData->event)); Atomic_Write(&vmContextID, evPayload->contextID); }
static void VPageChannelPeerDetachCB(VMCIId subId, // IN VMCI_EventData *eData, // IN void *clientData) // IN { VPageChannel *channel; VMCIEventPayload_QP *ePayload; ASSERT(eData); ASSERT(clientData); channel = (VPageChannel *)clientData; ePayload = VMCIEventDataPayload(eData); if (VMCI_HANDLE_EQUAL(channel->qpHandle, ePayload->handle)) { VMCI_DEBUG_LOG(10, (LGPFX"Peer detached (channel=%p) " "(qp handle=0x%x:0x%x).\n", channel, ePayload->handle.context, ePayload->handle.resource)); channel->state = VPCState_Disconnected; } }