From: Stephen Cameron <steve.cameron@hp.com>
To: linux-kernel@vger.kernel.org
Cc: michael.ni@hp.com, greg@kroah.com, torben.mathiasen@hp.com
Subject: PCI hotplug w/ drivers linked statically vs. module
Date: Fri, 7 Mar 2003 09:27:40 +0600 [thread overview]
Message-ID: <20030307032740.GA5236@zuul.cca.cpqcorp.net> (raw)
HI,
I noticed a difference in behavior with PCI hotplug, depending
on if the driver in questino is loaded as a module, or statically
linked.
For example, the tg3 driver, hot-unplugging, then hot-replugging
works seemingly well if the driver is a module, but differnetly (poorly?)
if it is statically linked. (eth0 disappears and does not come
back.)
Trying out the cciss driver (with some changes), we did get it to
hot-unplug and hot-replug while it was in use as md multipath
primary path (failed over to secondary path ok upon hot-unplug.)
and then i/o was able to be done on the old card when the card was
re-plugged. This was with the driver linked as a module.
(BTW, how can you tell the md driver that a failed path
is now good again?)
However, if we linked statically, then we still get requests
coming into the driver after the hba[] structure is deallocated.
(resulting in a panic). This does not seem to happen if the driver
is linked as a module.
Looking at the tg3 driver, it doesn't seem to take any precautions
in it's remove function. (Maybe there are things in the upper layers
there for e.g. pcmcia, that make it work...)
Note, in no case that I can see is the modular driver _unloaded_.
(e.g. there are other same type boards in the system which continue to
function after one board is hot-unplugged)
So why the difference in behavior with PCI hotplug and drivers
linked statically vs. as a module?
Thanks,
-- steve
next reply other threads:[~2003-03-07 15:13 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-03-07 3:27 Stephen Cameron [this message]
2003-03-10 17:50 ` Greg KH
2003-03-07 15:29 Cameron, Steve
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20030307032740.GA5236@zuul.cca.cpqcorp.net \
--to=steve.cameron@hp.com \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=michael.ni@hp.com \
--cc=torben.mathiasen@hp.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®