Thread (6 messages) flat view 6 messages, 3 authors, 2011-06-09

Re: [PATCH] bnx2i: fix bnx2i driver to test for physical device support of iscsi early

From: "Michael Chan" <mchan@broadcom.com>
Date: 2011-06-09 00:46:26

Neil Horman wrote:
How do you figure?  bnx2_cnic_probe is only called from is_cnic_dev
(which still
makes me shake my head a bit).  is_cnic_dev is only called from
cnic_netdev_event, which holds the rtnl_lock.  Since the event we
trigger on is
called from NETDEV_REGISTER or NETDEV_UP, I don't see how we can wind
up
suspending the device prior to caling bnx2_cnic_probe.
Consider NETDEV_REGISTER -> NETDEV_UP -> NETDEV_DOWN

During NETDEV_DOWN, we shutdown the device, but the netdev is still
registered.

Then we load cnic.  The NETDEV events will be replayed when we call
netdev_register_notifier() and cnic will get the NETDEV_REGISTER event.
We'll then call bnx2_cnic_probe() but the device is down.

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help