From f126802236bb059b8f0e804c76aef1031beb8a44 Mon Sep 17 00:00:00 2001 From: Jeffrey Altman Date: Tue, 12 Dec 2006 17:02:37 +0000 Subject: [PATCH] windows-sleep-when-out-of-buffers-20061212 When there are no free buffers, don't loop continuously. Sleep so that the other threads that are holding the buffers can grab the global buffer lock and release them. --- src/WINNT/afsd/cm_buf.c | 1 + 1 file changed, 1 insertion(+) diff --git a/src/WINNT/afsd/cm_buf.c b/src/WINNT/afsd/cm_buf.c index e19ab0aae0..9b790e51fb 100644 --- a/src/WINNT/afsd/cm_buf.c +++ b/src/WINNT/afsd/cm_buf.c @@ -862,6 +862,7 @@ long buf_GetNewLocked(struct cm_scache *scp, osi_hyper_t *offsetp, cm_buf_t **bu return 0; } /* for all buffers in lru queue */ lock_ReleaseWrite(&buf_globalLock); + Sleep(100); /* give some time for a buffer to be freed */ } /* while loop over everything */ /* not reached */ } /* the proc */