[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <C27F8246C663564A84BB7AB343977242667C64F9B5@IRVEXCHCCR01.corp.ad.broadcom.com>
Date: Wed, 8 Jun 2011 17:46:23 -0700
From: "Michael Chan" <mchan@...adcom.com>
To: "'Neil Horman'" <nhorman@...driver.com>
cc: "'netdev@...r.kernel.org'" <netdev@...r.kernel.org>,
"'Mike Christie'" <michaelc@...wisc.edu>,
"'David S. Miller'" <davem@...emloft.net>
Subject: Re: [PATCH] bnx2i: fix bnx2i driver to test for physical device
support of iscsi early
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.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists