From: Jon Mason <jon.mason@exar.com>
To: "David S. Miller" <davem@davemloft.net>
Cc: netdev@vger.kernel.org,
Sivakumar Subramani <sivakumar.subramani@exar.com>,
Sreenivasa Honnur <sreenivasa.honnur@exar.com>,
Ram Vepa <ram.vepa@exar.com>
Subject: [PATCH 5/7] vxge: hotplug stall
Date: Fri, 10 Dec 2010 18:03:00 -0600 [thread overview]
Message-ID: <1292025782-16372-5-git-send-email-jon.mason@exar.com> (raw)
In-Reply-To: <1292025782-16372-1-git-send-email-jon.mason@exar.com>
When hot-unplugging a vxge adapter while running, the driver's remove
routine prints warning and then stalls the calling thread. This is due
to vxge_remove calling vxge_device_unregister to unregister the netdev
before calling flush_scheduled_work clear any pending work. Swapping
the order of these two functions resolves the issue.
Signed-off-by: Jon Mason <jon.mason@exar.com>
Signed-off-by: Ram Vepa <ram.vepa@exar.com>
---
drivers/net/vxge/vxge-main.c | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/net/vxge/vxge-main.c b/drivers/net/vxge/vxge-main.c
index 3ec8068..b771e4b 100644
--- a/drivers/net/vxge/vxge-main.c
+++ b/drivers/net/vxge/vxge-main.c
@@ -3439,11 +3439,11 @@ static void vxge_device_unregister(struct __vxge_hw_device *hldev)
strncpy(buf, dev->name, IFNAMSIZ);
+ flush_scheduled_work();
+
/* in 2.6 will call stop() if device is up */
unregister_netdev(dev);
- flush_scheduled_work();
-
vxge_debug_init(vdev->level_trace, "%s: ethernet device unregistered",
buf);
vxge_debug_entryexit(vdev->level_trace, "%s: %s:%d Exiting...", buf,
--
1.7.0.4
next prev parent reply other threads:[~2010-12-11 0:03 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-12-11 0:02 [PATCH 1/7] vxge: code cleanup and reorganization Jon Mason
2010-12-11 0:02 ` [PATCH 2/7] vxge: fix crash of VF when unloading PF Jon Mason
2010-12-11 0:08 ` David Miller
2010-12-11 1:04 ` Chris Wright
2010-12-11 1:35 ` Ramkrishna Vepa
2010-12-11 0:02 ` [PATCH 3/7] vxge: use pci_request_region() Jon Mason
2010-12-11 0:09 ` David Miller
2010-12-11 0:02 ` [PATCH 4/7] vxge: transmit timeout deadlock Jon Mason
2010-12-11 0:09 ` David Miller
2010-12-11 0:03 ` Jon Mason [this message]
2010-12-11 0:09 ` [PATCH 5/7] vxge: hotplug stall David Miller
2010-12-11 0:03 ` [PATCH 6/7] vxge: independent interrupt moderation Jon Mason
2010-12-11 0:09 ` David Miller
2010-12-11 0:03 ` [PATCH 7/7] vxge: update driver version Jon Mason
2010-12-11 0:09 ` David Miller
2010-12-11 0:08 ` [PATCH 1/7] vxge: code cleanup and reorganization David Miller
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=1292025782-16372-5-git-send-email-jon.mason@exar.com \
--to=jon.mason@exar.com \
--cc=davem@davemloft.net \
--cc=netdev@vger.kernel.org \
--cc=ram.vepa@exar.com \
--cc=sivakumar.subramani@exar.com \
--cc=sreenivasa.honnur@exar.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.