netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH net 1/1] driver: macvtap: Unregister netdev rx_handler if macvtap_newlink fails
@ 2016-11-25  2:05 fgao
  2016-11-25  2:48 ` Jason Wang
  2016-11-28  1:04 ` David Miller
  0 siblings, 2 replies; 3+ messages in thread
From: fgao @ 2016-11-25  2:05 UTC (permalink / raw)
  To: davem, jasowang, edumazet, netdev, gfree.wind; +Cc: Gao Feng

From: Gao Feng <fgao@ikuai8.com>

The macvtap_newlink registers the netdev rx_handler firstly, but it
does not unregister the handler if macvlan_common_newlink failed.

Signed-off-by: Gao Feng <fgao@ikuai8.com>
---
 drivers/net/macvtap.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
index 070e329..bceca28 100644
--- a/drivers/net/macvtap.c
+++ b/drivers/net/macvtap.c
@@ -491,7 +491,13 @@ static int macvtap_newlink(struct net *src_net,
 	/* Don't put anything that may fail after macvlan_common_newlink
 	 * because we can't undo what it does.
 	 */
-	return macvlan_common_newlink(src_net, dev, tb, data);
+	err = macvlan_common_newlink(src_net, dev, tb, data);
+	if (err) {
+		netdev_rx_handler_unregister(dev);
+		return err;
+	}
+
+	return 0;
 }
 
 static void macvtap_dellink(struct net_device *dev,
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH net 1/1] driver: macvtap: Unregister netdev rx_handler if macvtap_newlink fails
  2016-11-25  2:05 [PATCH net 1/1] driver: macvtap: Unregister netdev rx_handler if macvtap_newlink fails fgao
@ 2016-11-25  2:48 ` Jason Wang
  2016-11-28  1:04 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: Jason Wang @ 2016-11-25  2:48 UTC (permalink / raw)
  To: fgao, davem, edumazet, netdev, gfree.wind



On 2016年11月25日 10:05, fgao@48lvckh6395k16k5.yundunddos.com wrote:
> From: Gao Feng <fgao@ikuai8.com>
>
> The macvtap_newlink registers the netdev rx_handler firstly, but it
> does not unregister the handler if macvlan_common_newlink failed.
>
> Signed-off-by: Gao Feng <fgao@ikuai8.com>
> ---
>   drivers/net/macvtap.c | 8 +++++++-
>   1 file changed, 7 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/net/macvtap.c b/drivers/net/macvtap.c
> index 070e329..bceca28 100644
> --- a/drivers/net/macvtap.c
> +++ b/drivers/net/macvtap.c
> @@ -491,7 +491,13 @@ static int macvtap_newlink(struct net *src_net,
>   	/* Don't put anything that may fail after macvlan_common_newlink
>   	 * because we can't undo what it does.
>   	 */
> -	return macvlan_common_newlink(src_net, dev, tb, data);
> +	err = macvlan_common_newlink(src_net, dev, tb, data);
> +	if (err) {
> +		netdev_rx_handler_unregister(dev);
> +		return err;
> +	}
> +
> +	return 0;
>   }
>   
>   static void macvtap_dellink(struct net_device *dev,

Acked-by: Jason Wang <jasowang@redhat.com>

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH net 1/1] driver: macvtap: Unregister netdev rx_handler if macvtap_newlink fails
  2016-11-25  2:05 [PATCH net 1/1] driver: macvtap: Unregister netdev rx_handler if macvtap_newlink fails fgao
  2016-11-25  2:48 ` Jason Wang
@ 2016-11-28  1:04 ` David Miller
  1 sibling, 0 replies; 3+ messages in thread
From: David Miller @ 2016-11-28  1:04 UTC (permalink / raw)
  To: fgao; +Cc: jasowang, edumazet, netdev, gfree.wind

From: fgao@ikuai8.com
Date: Fri, 25 Nov 2016 10:05:06 +0800

> From: Gao Feng <fgao@ikuai8.com>
> 
> The macvtap_newlink registers the netdev rx_handler firstly, but it
> does not unregister the handler if macvlan_common_newlink failed.
> 
> Signed-off-by: Gao Feng <fgao@ikuai8.com>

Applied.

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2016-11-28  1:04 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-25  2:05 [PATCH net 1/1] driver: macvtap: Unregister netdev rx_handler if macvtap_newlink fails fgao
2016-11-25  2:48 ` Jason Wang
2016-11-28  1:04 ` 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).