diff --git a/src/rx/rx.c b/src/rx/rx.c index 70649e2f00..e141d63850 100644 --- a/src/rx/rx.c +++ b/src/rx/rx.c @@ -6093,8 +6093,11 @@ rxi_ReapConnections(struct rxevent *unused, void *unused1, void *unused2) for (i = 0; i < RX_MAXCALLS; i++) { call = conn->call[i]; if (call) { + int code; havecalls = 1; - MUTEX_ENTER(&call->lock); + code = MUTEX_TRYENTER(&call->lock); + if (!code) + continue; #ifdef RX_ENABLE_LOCKS result = rxi_CheckCall(call, 1); #else /* RX_ENABLE_LOCKS */