On Thu, Sep 13, 2018 at 12:16:20PM -0700, Steve Wise wrote: > Add support for new LINK messages to allow adding and deleting rdma > interfaces. This will be used initially for soft rdma drivers which > instantiate device instances dynamically by the admin specifying a netdev > device to use. The rdma_rxe module will be the first user of these > messages. > > The design is modeled after RTNL_NEWLINK/DELLINK: rdma drivers > register with the rdma core if they provide link add/delete functions. > Each driver registers with a unique "type" string, that is used to > dispatch messages coming from user space. A new RDMA_NLDEV_ATTR is > defined for the "type" string. User mode will pass 3 attributes in a > NEWLINK message: RDMA_NLDEV_ATTR_IBDEV_NAME for the desired rdma device > name to be created, RDMA_NLDEV_ATTR_LINK_TYPE for the "type" of link > being added, and RDMA_NLDEV_ATTR_NDEV_NAME for the net_device interface > to use for this link. The DELLINK message will contain the IBDEV_NAME > and LINK_TYPE attributes. > > Signed-off-by: Steve Wise <swise@xxxxxxxxxxxxxxxxxxxxx> > --- <...> > > + RDMA_NLDEV_CMD_NEWLINK, > + > + RDMA_NLDEV_CMD_DELLINK, > + > RDMA_NLDEV_NUM_OPS > }; > > @@ -427,6 +431,11 @@ enum rdma_nldev_attr { > RDMA_NLDEV_ATTR_DRIVER_U64, /* u64 */ > > /* > + * Identifies the rdma driver. eg: "rxe" or "siw" > + */ > + RDMA_NLDEV_ATTR_LINK_TYPE, /* string */ I'll review it more deeply tomorrow, but two things caught my attention: 1. You need RDMA_NL_ADMIN_PERM for your netlink commands 2. LINK_TYPE should be index and not string, because it is why we are using using netlink :) Thanks > + > + /* > * Always the end > */ > RDMA_NLDEV_ATTR_MAX > -- > 1.8.3.1 >
Attachment:
signature.asc
Description: PGP signature