{
cm_bkgRequest_t *rp;
+ rx_StartClientThread();
+
lock_ObtainWrite(&cm_daemonLock);
while (daemon_ShutdownFlag == 0) {
if (!cm_bkgListEndp) {
dos_ptr dos_ncb;
#endif /* DJGPP */
+ rx_StartClientThread();
+
outncbp = GetNCB();
outbufp = GetPacket();
outbufp->ncbp = outncbp;
RXAFS_ResidencyCmd @217
StartRXAFS_FetchData64 @218
StartRXAFS_StoreData64 @219
+ rx_StartClientThread @220
}
#endif /* KERNEL */
+#ifdef AFS_NT40_ENV
+/* This routine is only required on Windows */
+void
+rx_StartClientThread(void)
+{
+#ifdef AFS_PTHREAD_ENV
+ int pid;
+ pid = (int) pthread_self();
+#endif /* AFS_PTHREAD_ENV */
+#ifdef RX_ENABLE_TSFPQ
+ rx_TSFPQMaxProcs++;
+ RX_TS_FPQ_COMPUTE_LIMITS;
+#endif /* RX_ENABLE_TSFPQ */
+}
+#endif /* AFS_NT40_ENV */
+
/* This routine must be called if any services are exported. If the
* donateMe flag is set, the calling process is donated to the server
* process pool */
} while(0)
#ifdef RX_ENABLE_LOCKS
EXT afs_kmutex_t rx_freePktQ_lock;
-#ifdef AFS_PTHREAD_ENV
+#endif /* RX_ENABLE_LOCKS */
+
+#if defined(AFS_PTHREAD_ENV) && !defined(AFS_NT40_ENV)
#define RX_ENABLE_TSFPQ
EXT int rx_TSFPQGlobSize INIT(3); /* number of packets to transfer between global and local queues in one op */
EXT int rx_TSFPQLocalMax INIT(15); /* max number of packets on local FPQ before returning a glob to the global pool */
RX_FPQ_MARK_FREE(p); \
(rx_ts_info_p)->_FPQ.len++; \
} while(0)
-#endif /* AFS_PTHREAD_ENV */
-#endif /* RX_ENABLE_LOCKS */
+#endif /* AFS_PTHREAD_ENV && !AFS_NT40_ENV */
/* Number of free packets */
EXT int rx_nFreePackets INIT(0);