{
struct clock now, retryTime;
+ MUTEX_ASSERT(&call->lock);
clock_GetTime(&now);
retryTime = now;
static_inline void
rxi_rto_cancel(struct rx_call *call)
{
+ MUTEX_ASSERT(&call->lock);
if (rxevent_Cancel(&call->resendEvent))
CALL_RELE(call, RX_CALL_REFCOUNT_RESEND);
}
{
struct clock now, when;
+ MUTEX_ASSERT(&call->lock);
clock_GetTime(&now);
when = now;
clock_Add(&when, offset);
void
rxi_CancelDelayedAckEvent(struct rx_call *call)
{
+ MUTEX_ASSERT(&call->lock);
/* Only drop the ref if we cancelled it before it could run. */
if (rxevent_Cancel(&call->delayedAckEvent))
CALL_RELE(call, RX_CALL_REFCOUNT_DELAY);
if (event != NULL)
MUTEX_ENTER(&conn->conn_data_lock);
+ else
+ MUTEX_ASSERT(&conn->conn_data_lock);
if (event != NULL && event == conn->checkReachEvent)
rxevent_Put(&conn->checkReachEvent);
rxi_SendConnectionAbortLater(struct rx_connection *conn, int msec)
{
struct clock when, now;
+
+ MUTEX_ASSERT(&conn->conn_data_lock);
if (!conn->error) {
return;
}
static void
rxi_CancelDelayedAbortEvent(struct rx_call *call)
{
+ MUTEX_ASSERT(&call->lock);
if (rxevent_Cancel(&call->delayedAbortEvent))
CALL_RELE(call, RX_CALL_REFCOUNT_ABORT);
}
static void
rxi_ScheduleNatKeepAliveEvent(struct rx_connection *conn)
{
+ MUTEX_ASSERT(&conn->conn_data_lock);
if (!conn->natKeepAliveEvent && conn->secondsUntilNatPing) {
struct clock when, now;
clock_GetTime(&now);
static void
rxi_ScheduleKeepAliveEvent(struct rx_call *call)
{
+ MUTEX_ASSERT(&call->lock);
if (!call->keepAliveEvent) {
struct clock when, now;
clock_GetTime(&now);
static void
rxi_CancelKeepAliveEvent(struct rx_call *call) {
+ MUTEX_ASSERT(&call->lock);
if (rxevent_Cancel(&call->keepAliveEvent))
CALL_RELE(call, RX_CALL_REFCOUNT_ALIVE);
}
static void
rxi_ScheduleGrowMTUEvent(struct rx_call *call, int secs)
{
+ MUTEX_ASSERT(&call->lock);
if (!call->growMTUEvent) {
struct clock when, now;
static void
rxi_CancelGrowMTUEvent(struct rx_call *call)
{
+ MUTEX_ASSERT(&call->lock);
if (rxevent_Cancel(&call->growMTUEvent))
CALL_RELE(call, RX_CALL_REFCOUNT_MTU);
}