linux/drivers/infiniband/ulp
Jason Gunthorpe 9f49a5b5c2 RDMA/netdev: Use priv_destructor for netdev cleanup
Now that the unregister_netdev flow for IPoIB no longer relies on external
code we can now introduce the use of priv_destructor and
needs_free_netdev.

The rdma_netdev flow is switched to use the netdev common priv_destructor
instead of the special free_rdma_netdev and the IPOIB ULP adjusted:
 - priv_destructor needs to switch to point to the ULP's destructor
   which will then call the rdma_ndev's in the right order
 - We need to be careful around the error unwind of register_netdev
   as it sometimes calls priv_destructor on failure
 - ULPs need to use ndo_init/uninit to ensure proper ordering
   of failures around register_netdev

Switching to priv_destructor is a necessary pre-requisite to using
the rtnl new_link mechanism.

The VNIC user for rdma_netdev should also be revised, but that is left for
another patch.

Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
Signed-off-by: Denis Drozdov <denisd@mellanox.com>
Signed-off-by: Leon Romanovsky <leonro@mellanox.com>
2018-08-02 20:27:43 -06:00
..
ipoib RDMA/netdev: Use priv_destructor for netdev cleanup 2018-08-02 20:27:43 -06:00
iser IB/iser: Inline two work request conversion functions 2018-07-30 19:59:40 -06:00
isert IB/isert: Simplify ib_post_(send|recv|srq_recv)() calls 2018-07-24 16:06:36 -06:00
opa_vnic opa_vnic: Just use skb_get_hash instead of skb_tx_hash 2018-04-29 22:01:32 -04:00
srp RDMA/cma: Constify path record, ib_cm_event, listen_id pointers 2018-07-30 20:49:04 -06:00
srpt RDMA/cma: Constify path record, ib_cm_event, listen_id pointers 2018-07-30 20:49:04 -06:00
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00