RDMA/rxe: Move rxe_mcast_attach/detach to rxe_mcast.c
Move rxe_mcast_attach and rxe_mcast_detach from rxe_verbs.c to rxe_mcast.c, Make non-static and add declarations to rxe_loc.h. Make the subroutines in rxe_mcast.c referenced by these routines static and remove their declarations from rxe_loc.h. Link: https://lore.kernel.org/r/20220127213755.31697-3-rpearsonhpe@gmail.com Signed-off-by: Bob Pearson <rpearsonhpe@gmail.com> Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
This commit is contained in:
parent
7df1023970
commit
758c7f1e9c
|
@ -40,18 +40,10 @@ void rxe_cq_disable(struct rxe_cq *cq);
|
|||
void rxe_cq_cleanup(struct rxe_pool_elem *arg);
|
||||
|
||||
/* rxe_mcast.c */
|
||||
int rxe_mcast_get_grp(struct rxe_dev *rxe, union ib_gid *mgid,
|
||||
struct rxe_mc_grp **grp_p);
|
||||
|
||||
int rxe_mcast_add_grp_elem(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
struct rxe_mc_grp *grp);
|
||||
|
||||
int rxe_mcast_drop_grp_elem(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
union ib_gid *mgid);
|
||||
|
||||
void rxe_drop_all_mcast_groups(struct rxe_qp *qp);
|
||||
|
||||
void rxe_mc_cleanup(struct rxe_pool_elem *arg);
|
||||
int rxe_attach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid);
|
||||
int rxe_detach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid);
|
||||
|
||||
/* rxe_mmap.c */
|
||||
struct rxe_mmap_info {
|
||||
|
|
|
@ -52,8 +52,8 @@ static struct rxe_mc_grp *create_grp(struct rxe_dev *rxe,
|
|||
return grp;
|
||||
}
|
||||
|
||||
int rxe_mcast_get_grp(struct rxe_dev *rxe, union ib_gid *mgid,
|
||||
struct rxe_mc_grp **grp_p)
|
||||
static int rxe_mcast_get_grp(struct rxe_dev *rxe, union ib_gid *mgid,
|
||||
struct rxe_mc_grp **grp_p)
|
||||
{
|
||||
int err;
|
||||
struct rxe_mc_grp *grp;
|
||||
|
@ -81,7 +81,7 @@ done:
|
|||
return 0;
|
||||
}
|
||||
|
||||
int rxe_mcast_add_grp_elem(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
static int rxe_mcast_add_grp_elem(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
struct rxe_mc_grp *grp)
|
||||
{
|
||||
int err;
|
||||
|
@ -125,8 +125,8 @@ out:
|
|||
return err;
|
||||
}
|
||||
|
||||
int rxe_mcast_drop_grp_elem(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
union ib_gid *mgid)
|
||||
static int rxe_mcast_drop_grp_elem(struct rxe_dev *rxe, struct rxe_qp *qp,
|
||||
union ib_gid *mgid)
|
||||
{
|
||||
struct rxe_mc_grp *grp;
|
||||
struct rxe_mc_elem *elem, *tmp;
|
||||
|
@ -194,3 +194,29 @@ void rxe_mc_cleanup(struct rxe_pool_elem *elem)
|
|||
rxe_drop_key(grp);
|
||||
rxe_mcast_delete(rxe, &grp->mgid);
|
||||
}
|
||||
|
||||
int rxe_attach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid)
|
||||
{
|
||||
int err;
|
||||
struct rxe_dev *rxe = to_rdev(ibqp->device);
|
||||
struct rxe_qp *qp = to_rqp(ibqp);
|
||||
struct rxe_mc_grp *grp;
|
||||
|
||||
/* takes a ref on grp if successful */
|
||||
err = rxe_mcast_get_grp(rxe, mgid, &grp);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
err = rxe_mcast_add_grp_elem(rxe, qp, grp);
|
||||
|
||||
rxe_drop_ref(grp);
|
||||
return err;
|
||||
}
|
||||
|
||||
int rxe_detach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid)
|
||||
{
|
||||
struct rxe_dev *rxe = to_rdev(ibqp->device);
|
||||
struct rxe_qp *qp = to_rqp(ibqp);
|
||||
|
||||
return rxe_mcast_drop_grp_elem(rxe, qp, mgid);
|
||||
}
|
||||
|
|
|
@ -999,32 +999,6 @@ static int rxe_map_mr_sg(struct ib_mr *ibmr, struct scatterlist *sg,
|
|||
return n;
|
||||
}
|
||||
|
||||
static int rxe_attach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid)
|
||||
{
|
||||
int err;
|
||||
struct rxe_dev *rxe = to_rdev(ibqp->device);
|
||||
struct rxe_qp *qp = to_rqp(ibqp);
|
||||
struct rxe_mc_grp *grp;
|
||||
|
||||
/* takes a ref on grp if successful */
|
||||
err = rxe_mcast_get_grp(rxe, mgid, &grp);
|
||||
if (err)
|
||||
return err;
|
||||
|
||||
err = rxe_mcast_add_grp_elem(rxe, qp, grp);
|
||||
|
||||
rxe_drop_ref(grp);
|
||||
return err;
|
||||
}
|
||||
|
||||
static int rxe_detach_mcast(struct ib_qp *ibqp, union ib_gid *mgid, u16 mlid)
|
||||
{
|
||||
struct rxe_dev *rxe = to_rdev(ibqp->device);
|
||||
struct rxe_qp *qp = to_rqp(ibqp);
|
||||
|
||||
return rxe_mcast_drop_grp_elem(rxe, qp, mgid);
|
||||
}
|
||||
|
||||
static ssize_t parent_show(struct device *device,
|
||||
struct device_attribute *attr, char *buf)
|
||||
{
|
||||
|
|
Loading…
Reference in New Issue