linux/include/rdma
Niranjana Vishwanathapura 8e95960199 IB/core, opa_vnic, hfi1, mlx5: Properly free rdma_netdev
IPOIB is calling free_rdma_netdev even though alloc_rdma_netdev has
returned -EOPNOTSUPP.
Move free_rdma_netdev from ib_device structure to rdma_netdev structure
thus ensuring proper cleanup function is called for the rdma net device.

Fix the following trace:

ib0: Failed to modify QP to ERROR state
BUG: unable to handle kernel paging request at 0000000000001d20
IP: hfi1_vnic_free_rn+0x26/0xb0 [hfi1]
Call Trace:
 ipoib_remove_one+0xbe/0x160 [ib_ipoib]
 ib_unregister_device+0xd0/0x170 [ib_core]
 rvt_unregister_device+0x29/0x90 [rdmavt]
 hfi1_unregister_ib_device+0x1a/0x100 [hfi1]
 remove_one+0x4b/0x220 [hfi1]
 pci_device_remove+0x39/0xc0
 device_release_driver_internal+0x141/0x200
 driver_detach+0x3f/0x80
 bus_remove_driver+0x55/0xd0
 driver_unregister+0x2c/0x50
 pci_unregister_driver+0x2a/0xa0
 hfi1_mod_cleanup+0x10/0xf65 [hfi1]
 SyS_delete_module+0x171/0x250
 do_syscall_64+0x67/0x150
 entry_SYSCALL64_slow_path+0x25/0x25

Reviewed-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Niranjana Vishwanathapura <niranjana.vishwanathapura@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
2017-07-05 17:11:00 -04:00
..
ib_addr.h net-next: treewide use is_vlan_dev() helper function. 2017-02-06 16:33:29 -05:00
ib_cache.h RDMA/core: export ib_get_cached_port_state 2017-01-12 23:00:00 -05:00
ib_cm.h IB/SA: Rename ib_sa_path_rec to sa_path_rec 2017-05-01 14:37:28 -04:00
ib_fmr_pool.h
ib_hdrs.h IB/hfi1: Use defines from common headers 2017-04-28 13:48:01 -04:00
ib_mad.h IB/SA: Add support to query OPA path records 2017-05-01 14:39:02 -04:00
ib_marshall.h IB/SA: Rename ib_sa_path_rec to sa_path_rec 2017-05-01 14:37:28 -04:00
ib_pack.h IB/hfi1: Add transmit fault injection feature 2017-04-05 14:45:09 -04:00
ib_pma.h IB/core: Display extended counter set if available 2015-12-23 15:58:30 -05:00
ib_sa.h RDMA/SA: Fix kernel panic in CMA request handler flow 2017-06-01 17:20:14 -04:00
ib_smi.h IB/core: Move SM class defines from ib_mad.h to ib_smi.h 2015-09-03 15:50:32 -04:00
ib_umem_odp.h IB/umem: Add support to huge ODP 2017-04-25 15:40:28 -04:00
ib_umem.h IB/umem: Add contiguous ODP support 2017-04-25 15:40:28 -04:00
ib_verbs.h IB/core, opa_vnic, hfi1, mlx5: Properly free rdma_netdev 2017-07-05 17:11:00 -04:00
ib.h new helper: uaccess_kernel() 2017-03-28 16:43:25 -04:00
iw_cm.h rdma_cm: add rdma_reject_msg() helper function 2016-12-14 11:38:28 -05:00
iw_portmap.h RDMA/core: Enable the iWarp Port Mapper to provide the actual address of the connecting peer to its clients 2015-05-05 09:18:01 -04:00
mr_pool.h IB/core: add a simple MR pool 2016-05-13 13:37:18 -04:00
opa_addr.h IB/SA: Add OPA addr header 2017-05-01 16:35:59 -04:00
opa_port_info.h IB/hfi1: Virtual Network Interface Controller (VNIC) HW support 2017-04-20 15:19:35 -04:00
opa_smi.h IB/mad: Eliminate redundant SM class version defines for OPA 2016-12-14 11:01:58 -05:00
opa_vnic.h IB/opa-vnic: Virtual Network Interface Controller (VNIC) interface 2017-04-20 12:01:38 -04:00
rdma_cm_ib.h IB/SA: Rename ib_sa_path_rec to sa_path_rec 2017-05-01 14:37:28 -04:00
rdma_cm.h IB/SA: Rename ib_sa_path_rec to sa_path_rec 2017-05-01 14:37:28 -04:00
rdma_netlink.h RDMA/netlink: Reduce exposure of RDMA netlink functions 2017-06-01 17:20:11 -04:00
rdma_vt.h IB/core: Rename struct ib_ah_attr to rdma_ah_attr 2017-05-01 14:32:43 -04:00
rdmavt_cq.h IB/rdmavt: Add completion queue functions 2016-03-10 20:37:24 -05:00
rdmavt_mr.h IB/hfi1, rdmavt: Move SGE state helper routines into rdmavt 2017-02-19 09:18:41 -05:00
rdmavt_qp.h IB/hfi1, IB/rdmavt: Move r_adefered to r_lock cache line 2017-05-04 19:31:46 -04:00
rw.h IB/core: add RW API support for signature MRs 2016-05-13 13:37:20 -04:00
uverbs_std_types.h IB/core: Change completion channel to use the reworked objects schema 2017-04-05 13:28:04 -04:00
uverbs_types.h IB/core: Rename write flag to exclusive in rdma_core 2017-04-20 11:44:07 -04:00