FIXES 15584
add Get/PutConnection funcs to diddle conn refCounts.
rx_enable_hot_thread @203 DATA
xdr_int64 @204
xdr_uint64 @205
- rx_SetMaxMTU @206
+ rx_SetMaxMTU @206
+ rx_GetConnection @207
USERPRI;
}
+void
+rx_GetConnection(register struct rx_connection *conn)
+{
+ SPLVAR;
+
+ NETPRI;
+ AFS_RXGLOCK();
+ MUTEX_ENTER(&conn->conn_data_lock);
+ conn->refCount++;
+ MUTEX_EXIT(&conn->conn_data_lock);
+ AFS_RXGUNLOCK();
+ USERPRI;
+}
+
/* Start a new rx remote procedure call, on the specified connection.
* If wait is set to 1, wait for a free call channel; otherwise return
* 0. Maxtime gives the maximum number of seconds this call may take,
#define rx_EnableHotThread() (rx_enable_hot_thread = 1)
#define rx_DisableHotThread() (rx_enable_hot_thread = 0)
+#define rx_PutConnection(conn) rx_DestroyConnection(conn)
+
/* A connection is an authenticated communication path, allowing
limited multiple asynchronous conversations. */
#ifdef KDUMP_RX_LOCK
register int seconds);
extern void rxi_CleanupConnection(struct rx_connection *conn);
extern void rxi_DestroyConnection(register struct rx_connection *conn);
+extern void rx_GetConnection(register struct rx_connection *conn);
extern void rx_DestroyConnection(register struct rx_connection *conn);
extern struct rx_call *rx_NewCall(register struct rx_connection *conn);
extern int rxi_HasActiveCalls(register struct rx_connection *aconn);