On Fri, Feb 15, 2019 at 11:10:48AM -0600, Shiraz Saleem wrote: > Expose the register/unregister function pointers in the struct > i40e_netdev_priv which is accesible via the netdev_priv() interface > in the RDMA driver. On a netdev notification in the RDMA driver, > the appropriate LAN driver register/unregister functions are invoked > from the struct i40e_netdev_priv structure, Why? In later patches we get an entire device_add() based thing. Why do you need two things? The RDMA driver should bind to the thing that device_add created and from there reliably get the netdev. It should not listen to netdev notifiers for attachment. It would be excellent if you could make this more general as pretty much every single RDMA driver has some open coded (and often wrongly locked) version of this attachment process. This series is very big, so if you can see a way to make a general attachment scheme based around device_add/etc it would be a great pre-cursor series. Jason