RDS: rds_inc_path_init() helper function for MP capable transports
t_mp_capable transports can use rds_inc_path_init to initialize all fields in struct rds_incoming, including the i_conn_path. Signed-off-by: Sowmini Varadhan <sowmini.varadhan@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
ef9e62c2e5
commit
5e833e025d
|
@ -764,6 +764,8 @@ void rds_page_exit(void);
|
|||
/* recv.c */
|
||||
void rds_inc_init(struct rds_incoming *inc, struct rds_connection *conn,
|
||||
__be32 saddr);
|
||||
void rds_inc_path_init(struct rds_incoming *inc, struct rds_conn_path *conn,
|
||||
__be32 saddr);
|
||||
void rds_inc_put(struct rds_incoming *inc);
|
||||
void rds_recv_incoming(struct rds_connection *conn, __be32 saddr, __be32 daddr,
|
||||
struct rds_incoming *inc, gfp_t gfp);
|
||||
|
|
|
@ -53,6 +53,20 @@ void rds_inc_init(struct rds_incoming *inc, struct rds_connection *conn,
|
|||
}
|
||||
EXPORT_SYMBOL_GPL(rds_inc_init);
|
||||
|
||||
void rds_inc_path_init(struct rds_incoming *inc, struct rds_conn_path *cp,
|
||||
__be32 saddr)
|
||||
{
|
||||
atomic_set(&inc->i_refcount, 1);
|
||||
INIT_LIST_HEAD(&inc->i_item);
|
||||
inc->i_conn = cp->cp_conn;
|
||||
inc->i_conn_path = cp;
|
||||
inc->i_saddr = saddr;
|
||||
inc->i_rdma_cookie = 0;
|
||||
inc->i_rx_tstamp.tv_sec = 0;
|
||||
inc->i_rx_tstamp.tv_usec = 0;
|
||||
}
|
||||
EXPORT_SYMBOL_GPL(rds_inc_path_init);
|
||||
|
||||
static void rds_inc_addref(struct rds_incoming *inc)
|
||||
{
|
||||
rdsdebug("addref inc %p ref %d\n", inc, atomic_read(&inc->i_refcount));
|
||||
|
|
Loading…
Reference in New Issue