On 19/05/2015 21:26, Jason Gunthorpe wrote:
quoted
+ list_for_each_entry_rcu(client, &client_list, list)
+ if (client->get_net_device_by_port_pkey_ip) {
+ ret = client->get_net_device_by_port_pkey_ip(dev, port,
+ pkey,
+
addr);
Considering the patch that introduced the rwsem, this doesn't look
right.
We can't call a client call back on a device that is unregistered, we
can't call a client call back on a client that is unregistering.
So the ordering of the list_del/add vs call back calls in device.c is
not right, please audit everything with an eye toward maintaing sane
invarients.
Thanks for pointing that out. I'll do that.
Haggai
--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html