Lines Matching defs:pHandle
48 * @param pHandle The handle structure (output).
55 SUPR0DECL(int) SUPR0IdcOpen(PSUPDRVIDCHANDLE pHandle, uint32_t uReqVersion, uint32_t uMinVersion,
65 AssertPtrReturn(pHandle, VERR_INVALID_POINTER);
66 pHandle->s.pSession = NULL;
108 rc = supR0IdcNativeOpen(pHandle, &Req);
111 pHandle->s.pSession = Req.u.Out.pSession;
127 ASMAtomicCmpXchgPtr(&g_pMainHandle, pHandle, NULL);
133 SUPR0IdcClose(pHandle);
144 * @param pHandle The IDC handle.
146 SUPR0DECL(int) SUPR0IdcClose(PSUPDRVIDCHANDLE pHandle)
154 AssertPtrReturn(pHandle, VERR_INVALID_POINTER);
155 if (!pHandle->s.pSession)
157 AssertPtrReturn(pHandle->s.pSession, VERR_INVALID_HANDLE);
164 Req.pSession = pHandle->s.pSession;
165 rc = supR0IdcNativeClose(pHandle, &Req);
168 pHandle->s.pSession = NULL;
169 ASMAtomicCmpXchgPtr(&g_pMainHandle, NULL, pHandle);
183 * @param pHandle The IDC handle.
185 SUPR0DECL(PSUPDRVSESSION) SUPR0IdcGetSession(PSUPDRVIDCHANDLE pHandle)
188 AssertPtrReturn(pHandle, NULL);
189 pSession = pHandle->s.pSession;
205 PSUPDRVIDCHANDLE pHandle = ASMAtomicUoReadPtrT(&g_pMainHandle, PSUPDRVIDCHANDLE);
206 if ( VALID_PTR(pHandle)
207 && pHandle->s.pSession == pSession)
208 return pHandle;