On Thu, 2018-12-06 at 20:00 -0500, Doug Ledford wrote: > > > I didn't like the commit message as it stood, so I changed it to this. > > > Let me know if there are any objections, it's still changeable as long as it's in > > > my wip branch: > > > > > > IB/core: Fix oops in netdev_next_upper_dev_rcu() > > > > > > On removal of the mlx4_en module, the proper order of removal is to > > > remove the roce devices, and then remove the net devices the roce > > In current code, mlx4_ib and mlx4_en are layered on top of mlx4_core. > > Agree. > > > So mlx4_en can get unloaded > > Agree. > > > even with roce devices created by mlx4_ib exist. > > Are you sure about this part? I'm not seeing any RoCE devices after I > unload mlx4_en. I am, however, seeing the parent ibdevice mlx4_0 and it > has two ports, but 1 port is registered and active and the other port > exists, but is unregistered from things like the verbs layer and stuff > like that. It seems it would be more accurate to say that there are no > longer any registered RoCE devices, but the parent ibdevice, which is a > dual port device, still has a stub for the RoCE device with all of the > capabilities and status set to defaults/down, and which has no attached > netdev device. We need to filter this down/default/unregistered device > port from results or we get the oops referenced. Does this only happen on dual port devices when in mixed ib/eth mode? -- Doug Ledford <dledford@xxxxxxxxxx> GPG KeyID: B826A3330E572FDD Key fingerprint = AE6B 1BDA 122B 23B4 265B 1274 B826 A333 0E57 2FDD
Attachment:
signature.asc
Description: This is a digitally signed message part