Lines Matching refs:thread

19     GET_THREAD(thread);
26 packspuFlush( (void *) thread );
28 /* the connection is thread->server.conn */
32 crNetSend(thread->netServer.conn, NULL, &msg, len);
93 packspuFlush( (void *) thread );
129 GET_THREAD(thread);
130 GLint writeback = CRPACKSPU_IS_WDDM_CRHGSMI() ? 1 : pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network;
150 packspuFlush( (void *) thread );
152 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
159 GET_THREAD(thread);
163 if (!thread->bInjectThread)
169 packspuFlush( (void *) thread );
170 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
182 if (pack_spu.thread[i].inUse
183 && (thread != &pack_spu.thread[i]) && pack_spu.thread[i].netServer.conn
184 && pack_spu.thread[i].packer && pack_spu.thread[i].packer->currentBuffer)
186 packspuFlush((void *) &pack_spu.thread[i]);
188 if (pack_spu.thread[i].netServer.conn->u32ClientID == thread->netServer.conn->u32InjectClientID)
201 thread->netServer.conn->u32InjectClientID=0;
204 packspuFlush((void *) thread);
226 GET_THREAD(thread);
230 CRASSERT(!thread || !thread->bInjectThread);
231 thread = GET_THREAD_VAL_ID(con);
232 crPackSetContext(thread->packer);
234 if (curPacker != thread->packer)
238 CRASSERT(thread);
239 CRASSERT(thread->bInjectThread);
246 GET_THREAD(thread);
248 int writeback = CRPACKSPU_IS_WDDM_CRHGSMI() ? 1 : pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network;
250 ThreadInfo *curThread = thread;
260 thread = GET_THREAD_VAL_ID(con);
265 if (!thread) {
266 thread = packspuNewThread(
273 CRASSERT(thread);
274 CRASSERT(thread->packer);
277 crPackSetContext(thread->packer);
287 packspuFlush(thread);
288 if (!(thread->netServer.conn->actual_network))
294 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
304 if (thread != curThread)
325 GET_THREAD(thread);
330 if (!CRPACKSPU_IS_WDDM_CRHGSMI() && !(pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network))
343 packspuFlush( (void *) thread );
345 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
365 GET_THREAD(thread);
370 if (!CRPACKSPU_IS_WDDM_CRHGSMI() && !(pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network))
382 packspuFlush( (void *) thread );
384 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
401 GET_THREAD(thread);
417 packspuFlush( (void *) thread );
418 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
424 GET_THREAD(thread);
440 packspuFlush( (void *) thread );
441 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
447 GET_THREAD(thread);
463 packspuFlush( (void *) thread );
464 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
470 GET_THREAD(thread);
486 packspuFlush( (void *) thread );
487 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
493 GET_THREAD(thread);
494 if (thread->currentContext->fAutoFlush == fEnable)
497 thread->currentContext->fAutoFlush = fEnable;
498 thread->currentContext->currentThread = fEnable ? thread : NULL;
503 GET_THREAD(thread);
505 thread->currentContext->fCheckZerroVertAttr = fEnable;
549 GET_THREAD(thread);
554 if (!CRPACKSPU_IS_WDDM_CRHGSMI() && !(pack_spu.thread[pack_spu.idxThreadInUse].netServer.conn->actual_network))
567 packspuFlush( (void *) thread );
568 CRPACKSPU_WRITEBACK_WAIT(thread, writeback);
583 GET_THREAD(thread);
584 CRASSERT(!thread);
591 if (!pack_spu.thread[i].inUse)
593 thread = &pack_spu.thread[i];
597 CRASSERT(thread);
599 thread->inUse = GL_TRUE;
601 thread->id = crThreadID();
603 thread->id = THREAD_OFFSET_MAGIC + i;
604 thread->currentContext = NULL;
605 thread->bInjectThread = GL_TRUE;
607 thread->netServer.name = crStrdup(pack_spu.name);
608 thread->netServer.buffer_size = 64 * 1024;
610 packspuConnectToServer(&(thread->netServer)
615 CRASSERT(thread->netServer.conn);
617 CRASSERT(thread->packer == NULL);
618 thread->packer = crPackNewContext( pack_spu.swap );
619 CRASSERT(thread->packer);
620 crPackInitBuffer(&(thread->buffer), crNetAlloc(thread->netServer.conn),
621 thread->netServer.conn->buffer_size, thread->netServer.conn->mtu);
622 thread->buffer.canBarf = thread->netServer.conn->Barf ? GL_TRUE : GL_FALSE;
624 crPackSetBuffer( thread->packer, &thread->buffer );
625 crPackFlushFunc( thread->packer, packspuFlush );
626 crPackFlushArg( thread->packer, (void *) thread );
627 crPackSendHugeFunc( thread->packer, packspuHuge );
628 crPackSetContext( thread->packer );
630 crSetTSD(&_PackTSD, thread);
638 CRASSERT(thread->id - THREAD_OFFSET_MAGIC < RT_ELEMENTS(pack_spu.thread)
639 && GET_THREAD_VAL_ID(thread->id) == thread);
640 con = thread->id;
651 ThreadInfo *thread = NULL;
659 thread = GET_THREAD_VAL_ID(con);
664 thread = GET_THREAD_VAL();
666 CRASSERT(thread && thread->netServer.conn && thread->netServer.conn->type==CR_VBOXHGCM);
667 ret = thread->netServer.conn->u32ClientID;
678 GET_THREAD(thread);
680 CRASSERT(thread && thread->netServer.conn && thread->netServer.conn->type==CR_VBOXHGCM && thread->bInjectThread);
681 thread->netServer.conn->u32InjectClientID = id;
690 GET_THREAD(thread);
694 if (pack_spu.thread[i].inUse && thread==&pack_spu.thread[i] && thread->id==crThreadID())
696 crError("2nd attach to same thread");
716 GET_THREAD(thread);
717 if (thread)
723 if (pack_spu.thread[i].inUse && thread==&pack_spu.thread[i]
724 && thread->id==crThreadID() && thread->netServer.conn)
728 packspuFlush((void *) thread);
730 if (pack_spu.thread[i].packer)
732 CR_LOCK_PACKER_CONTEXT(thread->packer);
734 CR_UNLOCK_PACKER_CONTEXT(thread->packer);
735 crPackDeleteContext(pack_spu.thread[i].packer);
737 if (pack_spu.thread[i].buffer.pack)
739 crNetFree(pack_spu.thread[i].netServer.conn, pack_spu.thread[i].buffer.pack);
740 pack_spu.thread[i].buffer.pack = NULL;
743 crNetFreeConnection(pack_spu.thread[i].netServer.conn);
745 if (pack_spu.thread[i].netServer.name)
746 crFree(pack_spu.thread[i].netServer.name);
750 crMemZero(&pack_spu.thread[i], sizeof(ThreadInfo));
758 if (pack_spu.thread[i].inUse)
773 if (ctx->currentThread == thread)