* [Patch net] bridge: fix netconsole setup over bridge
@ 2014-02-06 23:00 Cong Wang
2014-02-07 0:50 ` Toshiaki Makita
2014-02-07 6:28 ` David Miller
0 siblings, 2 replies; 3+ messages in thread
From: Cong Wang @ 2014-02-06 23:00 UTC (permalink / raw)
To: netdev
Cc: Toshiaki Makita, Stephen Hemminger, David S. Miller, Cong Wang,
Cong Wang
From: Cong Wang <cwang@twopensource.com>
Commit 93d8bf9fb8f3 ("bridge: cleanup netpoll code") introduced
a check in br_netpoll_enable(), but this check is incorrect for
br_netpoll_setup(). This patch moves the code after the check
into __br_netpoll_enable() and calls it in br_netpoll_setup().
For br_add_if(), the check is still needed.
Fixes: 93d8bf9fb8f3 ("bridge: cleanup netpoll code")
Cc: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Cc: Stephen Hemminger <stephen@networkplumber.org>
Cc: David S. Miller <davem@davemloft.net>
Signed-off-by: Cong Wang <cwang@twopensource.com>
Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
---
diff --git a/net/bridge/br_device.c b/net/bridge/br_device.c
index e4401a5..d9a9b0f 100644
--- a/net/bridge/br_device.c
+++ b/net/bridge/br_device.c
@@ -226,6 +226,33 @@ static void br_netpoll_cleanup(struct net_device *dev)
br_netpoll_disable(p);
}
+static int __br_netpoll_enable(struct net_bridge_port *p, gfp_t gfp)
+{
+ struct netpoll *np;
+ int err;
+
+ np = kzalloc(sizeof(*p->np), gfp);
+ if (!np)
+ return -ENOMEM;
+
+ err = __netpoll_setup(np, p->dev, gfp);
+ if (err) {
+ kfree(np);
+ return err;
+ }
+
+ p->np = np;
+ return err;
+}
+
+int br_netpoll_enable(struct net_bridge_port *p, gfp_t gfp)
+{
+ if (!p->br->dev->npinfo)
+ return 0;
+
+ return __br_netpoll_enable(p, gfp);
+}
+
static int br_netpoll_setup(struct net_device *dev, struct netpoll_info *ni,
gfp_t gfp)
{
@@ -236,7 +263,7 @@ static int br_netpoll_setup(struct net_device *dev, struct netpoll_info *ni,
list_for_each_entry(p, &br->port_list, list) {
if (!p->dev)
continue;
- err = br_netpoll_enable(p, gfp);
+ err = __br_netpoll_enable(p, gfp);
if (err)
goto fail;
}
@@ -249,28 +276,6 @@ fail:
goto out;
}
-int br_netpoll_enable(struct net_bridge_port *p, gfp_t gfp)
-{
- struct netpoll *np;
- int err;
-
- if (!p->br->dev->npinfo)
- return 0;
-
- np = kzalloc(sizeof(*p->np), gfp);
- if (!np)
- return -ENOMEM;
-
- err = __netpoll_setup(np, p->dev, gfp);
- if (err) {
- kfree(np);
- return err;
- }
-
- p->np = np;
- return err;
-}
-
void br_netpoll_disable(struct net_bridge_port *p)
{
struct netpoll *np = p->np;
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: [Patch net] bridge: fix netconsole setup over bridge
2014-02-06 23:00 [Patch net] bridge: fix netconsole setup over bridge Cong Wang
@ 2014-02-07 0:50 ` Toshiaki Makita
2014-02-07 6:28 ` David Miller
1 sibling, 0 replies; 3+ messages in thread
From: Toshiaki Makita @ 2014-02-07 0:50 UTC (permalink / raw)
To: Cong Wang, netdev; +Cc: Stephen Hemminger, David S. Miller, Cong Wang
(2014/02/07 8:00), Cong Wang wrote:
> From: Cong Wang <cwang@twopensource.com>
>
> Commit 93d8bf9fb8f3 ("bridge: cleanup netpoll code") introduced
> a check in br_netpoll_enable(), but this check is incorrect for
> br_netpoll_setup(). This patch moves the code after the check
> into __br_netpoll_enable() and calls it in br_netpoll_setup().
> For br_add_if(), the check is still needed.
>
Acked-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Tested-by: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
Thanks,
Toshiaki Makita
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [Patch net] bridge: fix netconsole setup over bridge
2014-02-06 23:00 [Patch net] bridge: fix netconsole setup over bridge Cong Wang
2014-02-07 0:50 ` Toshiaki Makita
@ 2014-02-07 6:28 ` David Miller
1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2014-02-07 6:28 UTC (permalink / raw)
To: xiyou.wangcong; +Cc: netdev, makita.toshiaki, stephen, cwang
From: Cong Wang <xiyou.wangcong@gmail.com>
Date: Thu, 6 Feb 2014 15:00:52 -0800
> From: Cong Wang <cwang@twopensource.com>
>
> Commit 93d8bf9fb8f3 ("bridge: cleanup netpoll code") introduced
> a check in br_netpoll_enable(), but this check is incorrect for
> br_netpoll_setup(). This patch moves the code after the check
> into __br_netpoll_enable() and calls it in br_netpoll_setup().
> For br_add_if(), the check is still needed.
>
> Fixes: 93d8bf9fb8f3 ("bridge: cleanup netpoll code")
> Cc: Toshiaki Makita <makita.toshiaki@lab.ntt.co.jp>
> Cc: Stephen Hemminger <stephen@networkplumber.org>
> Cc: David S. Miller <davem@davemloft.net>
> Signed-off-by: Cong Wang <cwang@twopensource.com>
> Signed-off-by: Cong Wang <xiyou.wangcong@gmail.com>
Applied and queued up for -stable.
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2014-02-07 6:28 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-02-06 23:00 [Patch net] bridge: fix netconsole setup over bridge Cong Wang
2014-02-07 0:50 ` Toshiaki Makita
2014-02-07 6:28 ` David Miller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).