Netdev List
 help / color / mirror / Atom feed
* [PATCH net-next 1/4] ipip: advertise tunnel param via rtnl
From: Nicolas Dichtel @ 2012-11-09  9:51 UTC (permalink / raw)
  To: netdev; +Cc: davem, Nicolas Dichtel
In-Reply-To: <1352454671-4336-1-git-send-email-nicolas.dichtel@6wind.com>

Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
---
 include/uapi/linux/if_tunnel.h | 11 ++++++++
 net/ipv4/ipip.c                | 57 +++++++++++++++++++++++++++++++++++++++++-
 2 files changed, 67 insertions(+), 1 deletion(-)

diff --git a/include/uapi/linux/if_tunnel.h b/include/uapi/linux/if_tunnel.h
index 5db5942..ccb21d5 100644
--- a/include/uapi/linux/if_tunnel.h
+++ b/include/uapi/linux/if_tunnel.h
@@ -37,6 +37,17 @@ struct ip_tunnel_parm {
 	struct iphdr		iph;
 };
 
+enum {
+	IFLA_IPTUN_UNSPEC,
+	IFLA_IPTUN_LINK,
+	IFLA_IPTUN_LOCAL,
+	IFLA_IPTUN_REMOTE,
+	IFLA_IPTUN_TTL,
+	IFLA_IPTUN_TOS,
+	__IFLA_IPTUN_MAX,
+};
+#define IFLA_IPTUN_MAX	(__IFLA_IPTUN_MAX - 1)
+
 /* SIT-mode i_flags */
 #define	SIT_ISATAP	0x0001
 
diff --git a/net/ipv4/ipip.c b/net/ipv4/ipip.c
index e15b452..37e1ca2 100644
--- a/net/ipv4/ipip.c
+++ b/net/ipv4/ipip.c
@@ -138,6 +138,7 @@ struct ipip_net {
 static int ipip_tunnel_init(struct net_device *dev);
 static void ipip_tunnel_setup(struct net_device *dev);
 static void ipip_dev_free(struct net_device *dev);
+static struct rtnl_link_ops ipip_link_ops __read_mostly;
 
 /*
  * Locking : hash tables are protected by RCU and RTNL
@@ -305,6 +306,7 @@ static struct ip_tunnel *ipip_tunnel_locate(struct net *net,
 		goto failed_free;
 
 	strcpy(nt->parms.name, dev->name);
+	dev->rtnl_link_ops = &ipip_link_ops;
 
 	dev_hold(dev);
 	ipip_tunnel_link(ipn, nt);
@@ -829,6 +831,47 @@ static int __net_init ipip_fb_tunnel_init(struct net_device *dev)
 	return 0;
 }
 
+static size_t ipip_get_size(const struct net_device *dev)
+{
+	return
+		/* IFLA_IPTUN_LINK */
+		nla_total_size(4) +
+		/* IFLA_IPTUN_LOCAL */
+		nla_total_size(4) +
+		/* IFLA_IPTUN_REMOTE */
+		nla_total_size(4) +
+		/* IFLA_IPTUN_TTL */
+		nla_total_size(1) +
+		/* IFLA_IPTUN_TOS */
+		nla_total_size(1) +
+		0;
+}
+
+static int ipip_fill_info(struct sk_buff *skb, const struct net_device *dev)
+{
+	struct ip_tunnel *tunnel = netdev_priv(dev);
+	struct ip_tunnel_parm *parm = &tunnel->parms;
+
+	if (nla_put_u32(skb, IFLA_IPTUN_LINK, parm->link) ||
+	    nla_put_be32(skb, IFLA_IPTUN_LOCAL, parm->iph.saddr) ||
+	    nla_put_be32(skb, IFLA_IPTUN_REMOTE, parm->iph.daddr) ||
+	    nla_put_u8(skb, IFLA_IPTUN_TTL, parm->iph.ttl) ||
+	    nla_put_u8(skb, IFLA_IPTUN_TOS, parm->iph.tos))
+		goto nla_put_failure;
+	return 0;
+
+nla_put_failure:
+	return -EMSGSIZE;
+}
+
+static struct rtnl_link_ops ipip_link_ops __read_mostly = {
+	.kind		= "ipip",
+	.maxtype	= IFLA_IPTUN_MAX,
+	.priv_size	= sizeof(struct ip_tunnel),
+	.get_size	= ipip_get_size,
+	.fill_info	= ipip_fill_info,
+};
+
 static struct xfrm_tunnel ipip_handler __read_mostly = {
 	.handler	=	ipip_rcv,
 	.err_handler	=	ipip_err,
@@ -925,14 +968,26 @@ static int __init ipip_init(void)
 		return err;
 	err = xfrm4_tunnel_register(&ipip_handler, AF_INET);
 	if (err < 0) {
-		unregister_pernet_device(&ipip_net_ops);
 		pr_info("%s: can't register tunnel\n", __func__);
+		goto xfrm_tunnel_failed;
 	}
+	err = rtnl_link_register(&ipip_link_ops);
+	if (err < 0)
+		goto rtnl_link_failed;
+
+out:
 	return err;
+
+rtnl_link_failed:
+	xfrm4_tunnel_deregister(&ipip_handler, AF_INET);
+xfrm_tunnel_failed:
+	unregister_pernet_device(&ipip_net_ops);
+	goto out;
 }
 
 static void __exit ipip_fini(void)
 {
+	rtnl_link_unregister(&ipip_link_ops);
 	if (xfrm4_tunnel_deregister(&ipip_handler, AF_INET))
 		pr_info("%s: can't deregister tunnel\n", __func__);
 
-- 
1.7.12

^ permalink raw reply related

* [PATCH net-next 0/4] Advertise tunnel parameters via netlink
From: Nicolas Dichtel @ 2012-11-09  9:51 UTC (permalink / raw)
  To: netdev; +Cc: davem

The goal of this serie is to advertise tunnel parameters via netlink.

The patch against iproute2 will be sent once the patches are included and
net-next merged. I can send it on demand.

The last patch is a fix after a code review.

Comments are welcome.

Regards,
Nicolas

^ permalink raw reply

* Re: [PATCH] ipv6: fix the bug when propagating Redirect Message
From: Steffen Klassert @ 2012-11-09  8:54 UTC (permalink / raw)
  To: Duan Jiong; +Cc: davem, netdev
In-Reply-To: <20121024045410.GF27385@secunet.com>

On Wed, Oct 24, 2012 at 06:54:10AM +0200, Steffen Klassert wrote:
> On Tue, Oct 23, 2012 at 11:26:25PM +0800, Duan Jiong wrote:
> > +	while (opt_len) {
> > +		int l;
> > +	
> > +		if (opt_len < sizeof(struct nd_opt_hdr)) {
> > +			return;
> > +		}
> > +		l = nd_opt->nd_opt_len << 3;
> > +		if (opt_len < l || l == 0) {
> > +			return;
> > +		}
> > +		if (nd_opt->nd_opt_type == ND_OPT_REDIRECT_HDR) {
> > +			__skb_pull(skb, ndisc_head_len + opt_offset + 8);
> > +			break;
> > +		}
> > +		opt_len -= l;
> > +		nd_opt = ((void *)nd_opt) + 1;
> > +		opt_offset += 1;
> > +	}
> 
> Instead of the above loop, you could use ndisc_parse_options().
> This does the same what you are doing here and it would make it
> a bit clearer what's going on.
> 

Duan, are you going to update your patches? We really need fixes
for the problems you have discovered.

Thanks!

^ permalink raw reply

* [PATCH][net-next v2] gianfar: Fix alloc_skb_resources on -ENOMEM cleanup path
From: Claudiu Manoil @ 2012-11-09  8:11 UTC (permalink / raw)
  To: netdev; +Cc: Paul Gortmaker, Claudiu Manoil

Should gfar_init_bds() return with -ENOMEM inside gfar_alloc_skb_resources(),
free_skb_resources() will be called twice in a row on the "cleanup" path,
leading to duplicate kfree() calls for rx_|tx_queue->rx_|tx_skbuff resulting
in segmentation fault.
This patch prevents the segmentation fault to happen in the future
(rx_|tx_sbkbuff set to NULL), and corrects the error path handling
for gfar_init_bds().

Cc: Paul Gortmaker <paul.gortmaker@windriver.com>

Signed-off-by: Claudiu Manoil <claudiu.manoil@freescale.com>
---
v1: do free_skb_resources() on the cleanup path of gfar_init_bds()'s parent
v2: (minor change) no "goto" construct inside gfar_restore()

 drivers/net/ethernet/freescale/gianfar.c |   14 ++++++++------
 1 files changed, 8 insertions(+), 6 deletions(-)

diff --git a/drivers/net/ethernet/freescale/gianfar.c b/drivers/net/ethernet/freescale/gianfar.c
index 1d03dcd..81a0f33 100644
--- a/drivers/net/ethernet/freescale/gianfar.c
+++ b/drivers/net/ethernet/freescale/gianfar.c
@@ -210,7 +210,7 @@ static int gfar_init_bds(struct net_device *ndev)
 				skb = gfar_new_skb(ndev);
 				if (!skb) {
 					netdev_err(ndev, "Can't allocate RX buffers\n");
-					goto err_rxalloc_fail;
+					return -ENOMEM;
 				}
 				rx_queue->rx_skbuff[j] = skb;
 
@@ -223,10 +223,6 @@ static int gfar_init_bds(struct net_device *ndev)
 	}
 
 	return 0;
-
-err_rxalloc_fail:
-	free_skb_resources(priv);
-	return -ENOMEM;
 }
 
 static int gfar_alloc_skb_resources(struct net_device *ndev)
@@ -1356,7 +1352,11 @@ static int gfar_restore(struct device *dev)
 	if (!netif_running(ndev))
 		return 0;
 
-	gfar_init_bds(ndev);
+	if (gfar_init_bds(ndev)) {
+		free_skb_resources(priv);
+		return -ENOMEM;
+	}
+
 	init_registers(ndev);
 	gfar_set_mac_address(ndev);
 	gfar_init_mac(ndev);
@@ -1709,6 +1709,7 @@ static void free_skb_tx_queue(struct gfar_priv_tx_q *tx_queue)
 		tx_queue->tx_skbuff[i] = NULL;
 	}
 	kfree(tx_queue->tx_skbuff);
+	tx_queue->tx_skbuff = NULL;
 }
 
 static void free_skb_rx_queue(struct gfar_priv_rx_q *rx_queue)
@@ -1732,6 +1733,7 @@ static void free_skb_rx_queue(struct gfar_priv_rx_q *rx_queue)
 		rxbdp++;
 	}
 	kfree(rx_queue->rx_skbuff);
+	rx_queue->rx_skbuff = NULL;
 }
 
 /* If there are any tx skbs or rx skbs still around, free them.
-- 
1.6.6

^ permalink raw reply related

* Re: [PATCH] xfrm: remove redundant replay_esn check
From: Steffen Klassert @ 2012-11-09  7:59 UTC (permalink / raw)
  To: David Miller; +Cc: ulrich.weber, netdev
In-Reply-To: <20121108.220020.884271049343560692.davem@davemloft.net>

On Thu, Nov 08, 2012 at 10:00:20PM -0500, David Miller wrote:
> From: Ulrich Weber <ulrich.weber@sophos.com>
> Date: Thu, 8 Nov 2012 11:15:44 +0100
> 
> > x->replay_esn is already checked in if clause,
> > so remove check and ident properly
> > 
> > Signed-off-by: Ulrich Weber <ulrich.weber@sophos.com>
> 
> Steffen, I assume you'll pick this one up.

Yes, it was already in my queue. Now applied to ipsec-next.

Thanks!

^ permalink raw reply

* Re: Your Unsubscribe Request to users@subversion.tigris.org
From: admin @ 2012-11-09  7:59 UTC (permalink / raw)
  To: netdev

This is to inform you that your recent unsubscribe request was unsuccessful. This is probably because we could find no current subscription in your name.

^ permalink raw reply

* Re: [PATCH] ipv6: fix two typos in a comment in xfrm6_init()
From: Steffen Klassert @ 2012-11-09  7:57 UTC (permalink / raw)
  To: David Miller; +Cc: roy.qing.li, netdev
In-Reply-To: <20121108.145939.2274479010583117059.davem@davemloft.net>

On Thu, Nov 08, 2012 at 02:59:39PM -0500, David Miller wrote:
> From: Steffen Klassert <steffen.klassert@secunet.com>
> > 
> > The routing cache is removed, so this comment is obsolete. But it reminds
> > me that we set the gc threshold to ip_rt_max_size/2 in ipv4. With the
> > routing cache removal patch, ip_rt_max_size was set to INT_MAX. So the gc
> > starts to remove entries when a threshold of INT_MAX/2 is reached.
> > 
> > cat /proc/sys/net/ipv4/xfrm4_gc_thresh
> > 1073741823
> > 
> > I guess this was not intentional.
> 
> Do you mean for IPSEC routes?  For non-IPSEC routes on ipv4 there
> is nothing to garbage collect.

Yes, I mean IPsec routes. We still cache them at the flow cache
and at sockets, so we should do some garbage collecting.

We could either go back to a static threshold, as it was before

git commit a33bc5c15154c835aae26f16e6a3a7d9ad4acb45
xfrm: select sane defaults for xfrm[4|6] gc_thresh

or do the same as ipv6 does. I'll take care of this.

Btw. it seems to me that the flow cache has similar limitations
as the routing cache had. At least I was able to fill the flow
cache with a nmap scan from a remote entity. In practice, it's
hard to DOS the flow cache because we use a Jenkins hash with
a random initialization value, but this was the same with the
routing cache.

^ permalink raw reply

* Re: [PATCH v4 3/5] usbnet: smsc95xx: fix memory leak in smsc95xx_suspend
From: David Miller @ 2012-11-09  7:25 UTC (permalink / raw)
  To: mankad.maulik-Re5JQEeQqe8AvxtiuMwx3w
  Cc: ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw,
	gregkh-hQyY1W1yCW8ekmWlsbkhG0B+6BGkLq7r, oneukum-l3A5Bk7waGM,
	netdev-u79uwXL29TY76Z2rM5mHXA, linux-usb-u79uwXL29TY76Z2rM5mHXA
In-Reply-To: <CAEtNAxntrPne0AxqR2Pn-Vrrv_R12U-CxmW6=mFSfUS6U3BMKg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>

From: Maulik Mankad <mankad.maulik-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Date: Fri, 9 Nov 2012 12:28:17 +0530

> We don't need memset() here.
> May be command[2] = {0}; offset[2] = {0}; crc[4] = {0}; is enough.

The compiler can see this an will eliminate the unnecessary
clears.

So it's better to use memset and make the code much clearer
and easier to audit.
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply

* Re: [PATCH] vmxnet3: convert BUG_ON(true) into a simple BUG()
From: Shreyas Bhatewara @ 2012-11-09  6:02 UTC (permalink / raw)
  To: Sasha Levin; +Cc: VMware, Inc., netdev, linux-kernel
In-Reply-To: <1352406191-14303-1-git-send-email-sasha.levin@oracle.com>


----- Original Message -----
> Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
> ---
>  drivers/net/vmxnet3/vmxnet3_drv.c |    2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)

Signed-off-by: Shreyas N Bhatewara <sbhatewara@vmware.com>

^ permalink raw reply

* Re: [PATCH] socket.7: Correctly describe SO_SNDTIMEO for connect
From: Michael Kerrisk (man-pages) @ 2012-11-09  6:00 UTC (permalink / raw)
  To: Andi Kleen
  Cc: linux-man-u79uwXL29TY76Z2rM5mHXA, netdev-u79uwXL29TY76Z2rM5mHXA,
	Andi Kleen
In-Reply-To: <1352390123-28658-1-git-send-email-andi-Vw/NltI1exuRpAAqCnN02g@public.gmane.org>

Hi Andi,

On Thu, Nov 8, 2012 at 4:55 PM, Andi Kleen <andi-Vw/NltI1exuRpAAqCnN02g@public.gmane.org> wrote:
> From: Andi Kleen <ak-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
>
> When SO_SNDTIMEO is set before connect() connect may return EWOULDBLOCK
> when the timeout fires. Describe this correctly.

Thanks.

Applied.

Cheers,

Michael


> Signed-off-by: Andi Kleen <ak-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
> ---
>  man7/socket.7 |    4 ++++
>  1 files changed, 4 insertions(+), 0 deletions(-)
>
> diff --git a/man7/socket.7 b/man7/socket.7
> index cd75746..9e05f48 100644
> --- a/man7/socket.7
> +++ b/man7/socket.7
> @@ -434,6 +434,9 @@ set to
>  .B EAGAIN
>  or
>  .B EWOULDBLOCK
> +or
> +.B EINPROGRESS
> +(for connect)
>  .\" in fact to EAGAIN
>  just as if the socket was specified to be nonblocking.
>  If the timeout is set to zero (the default)
> @@ -442,6 +445,7 @@ Timeouts only have effect for system calls that perform socket I/O (e.g.,
>  .BR read (2),
>  .BR recvmsg (2),
>  .BR send (2),
> +.BR connect (2),
>  .BR sendmsg (2));
>  timeouts have no effect for
>  .BR select (2),
> --
> 1.7.7.6
>



-- 
Michael Kerrisk
Linux man-pages maintainer; http://www.kernel.org/doc/man-pages/
Author of "The Linux Programming Interface"; http://man7.org/tlpi/
--
To unsubscribe from this list: send the line "unsubscribe linux-man" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply

* Re: [PATCH -next] tcm_vhost: remove unused variable in vhost_scsi_allocate_cmd()
From: Nicholas A. Bellinger @ 2012-11-09  5:24 UTC (permalink / raw)
  To: Wei Yongjun; +Cc: kvm, mst, netdev, virtualization, yongjun_wei, target-devel
In-Reply-To: <CAPgLHd81=dTwwSTgUtd9YbgWf8YLMfi3VJQ-76h71+0W_mx_2g@mail.gmail.com>

Hello Wei,

On Wed, 2012-11-07 at 20:53 +0800, Wei Yongjun wrote:
> From: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
> 
> The variable se_sess is initialized but never used
> otherwise, so remove the unused variable.
> 
> dpatch engine is used to auto generate this patch.
> (https://github.com/weiyj/dpatch)
> 
> Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
> ---
>  drivers/vhost/tcm_vhost.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/drivers/vhost/tcm_vhost.c b/drivers/vhost/tcm_vhost.c
> index 23c138f..551fff0 100644
> --- a/drivers/vhost/tcm_vhost.c
> +++ b/drivers/vhost/tcm_vhost.c
> @@ -415,14 +415,12 @@ static struct tcm_vhost_cmd *vhost_scsi_allocate_cmd(
>  {
>  	struct tcm_vhost_cmd *tv_cmd;
>  	struct tcm_vhost_nexus *tv_nexus;
> -	struct se_session *se_sess;
>  
>  	tv_nexus = tv_tpg->tpg_nexus;
>  	if (!tv_nexus) {
>  		pr_err("Unable to locate active struct tcm_vhost_nexus\n");
>  		return ERR_PTR(-EIO);
>  	}
> -	se_sess = tv_nexus->tvn_se_sess;
>  
>  	tv_cmd = kzalloc(sizeof(struct tcm_vhost_cmd), GFP_ATOMIC);
>  	if (!tv_cmd) {
> 
> --

Looks fine to me.

Reviewed-by + Acked-by: Nicholas Bellinger <nab@linux-iscsi.org>

Thanks!

^ permalink raw reply

* Re: SR-IOV problem with Intel 82599EB (not enough MMIO resources for SR-IOV)
From: Jason Gao @ 2012-11-09  3:59 UTC (permalink / raw)
  To: Rose, Gregory V
  Cc: Kirsher, Jeffrey T, linux-kernel, netdev, kvm,
	e1000-devel@lists.sourceforge.net
In-Reply-To: <C5551D9AAB213A418B7FD5E4A6F30A072D565E76@ORSMSX106.amr.corp.intel.com>

> The BIOS in your machine doesn't support SR-IOV.  You'll need to ask the manufacturer for a BIOS upgrade, if in fact one is available.  Sometimes they're not.

very thanks Greg,my server Dell R710 with latest BIOS version and
option for SR-IOV(SR-IOV Global Enable->Enabled)  opened,I'm confused
that Does R710 provide full support for SR-IOV, kernel or  ixgbe
driver's bug? but I'm not sure where the problem lies,anyone has any
experience about this?   .

^ permalink raw reply

* [PATCH net-next] virtio_net: use net_*_ratelimited() helpers
From: Cong Wang @ 2012-11-09  3:47 UTC (permalink / raw)
  To: netdev; +Cc: Rusty Russell, Michael S. Tsirkin, David Miller, Cong Wang

These can be converted to net_*_ratelimited().

Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: "Michael S. Tsirkin" <mst@redhat.com>
Cc: David Miller <davem@davemloft.net>
Signed-off-by: Cong Wang <amwang@redhat.com>

---
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index cbf8b06..26c502e 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -212,8 +212,7 @@ static struct sk_buff *page_to_skb(struct virtnet_info *vi,
 	 * the case of a broken device.
 	 */
 	if (unlikely(len > MAX_SKB_FRAGS * PAGE_SIZE)) {
-		if (net_ratelimit())
-			pr_debug("%s: too much data\n", skb->dev->name);
+		net_dbg_ratelimited("%s: too much data\n", skb->dev->name);
 		dev_kfree_skb(skb);
 		return NULL;
 	}
@@ -333,9 +332,8 @@ static void receive_buf(struct net_device *dev, void *buf, unsigned int len)
 			skb_shinfo(skb)->gso_type = SKB_GSO_TCPV6;
 			break;
 		default:
-			if (net_ratelimit())
-				printk(KERN_WARNING "%s: bad gso type %u.\n",
-				       dev->name, hdr->hdr.gso_type);
+			net_warn_ratelimited("%s: bad gso type %u.\n",
+					     dev->name, hdr->hdr.gso_type);
 			goto frame_err;
 		}
 
@@ -344,9 +342,7 @@ static void receive_buf(struct net_device *dev, void *buf, unsigned int len)
 
 		skb_shinfo(skb)->gso_size = hdr->hdr.gso_size;
 		if (skb_shinfo(skb)->gso_size == 0) {
-			if (net_ratelimit())
-				printk(KERN_WARNING "%s: zero gso size.\n",
-				       dev->name);
+			net_warn_ratelimited("%s: zero gso size.\n", dev->name);
 			goto frame_err;
 		}
 

^ permalink raw reply related

* Re: [PATCH] tcp: Avoid infinite loop on recvmsg bug
From: Eric Dumazet @ 2012-11-09  3:29 UTC (permalink / raw)
  To: Julius Werner
  Cc: linux-kernel, netdev, Patrick McHardy, Hideaki YOSHIFUJI,
	James Morris, Alexey Kuznetsov, David S. Miller, Dave Jones,
	Sameer Nanda, Mandeep Singh Baines
In-Reply-To: <CAODwPW90mZuCDgYPZEJtYNOGGt752VpP=S_EYACUCGua_x=WjA@mail.gmail.com>

On Wed, 2012-11-07 at 18:25 -0800, Julius Werner wrote:
> > So you probably are fighting a bug we already fixed in upstream kernel.
> >
> > (commit c8628155ece363 "tcp: reduce out_of_order memory use" did not
> > played well with cloned skbs.)
> >
> > This issue was already discussed on netdev in the past.
> 
> Thanks for the hint. Unfortunately, we have not pulled c8628 into our
> tree yet, so that's not it. Is there another point where the cloned
> skb or the faked truesize might make it break? We have been running
> this test with that hardware some 30 times in the last months and only
> seen it once, so it cannot be that common.

Update : Chrome OS current tree is based on 3.4 and really needed the
patch :

https://gerrit.chromium.org/gerrit/#/c/37666/

^ permalink raw reply

* Re: [PATCH net-next] netconsole: add oops_only module option
From: David Miller @ 2012-11-09  3:07 UTC (permalink / raw)
  To: amwang; +Cc: netdev
In-Reply-To: <1352382158-3928-1-git-send-email-amwang@redhat.com>

From: Cong Wang <amwang@redhat.com>
Date: Thu,  8 Nov 2012 21:42:38 +0800

> Some people wants to log only oops messages via netconsole,
> (this is also why netoops was invented)
> so add a module option for netconsole. This can be tuned
> via /sys/module/netconsole/parameters/oops_only at run time
> as well.
> 
> Cc: David Miller <davem@davemloft.net>
> Signed-off-by: Cong Wang <amwang@redhat.com>

Seems reasonable, applied, thanks.

^ permalink raw reply

* vlan sysfs 'type'
From: David Miller @ 2012-11-09  3:05 UTC (permalink / raw)
  To: cardoe; +Cc: netdev


Ok, after some more careful consideration, I decided to apply
your patch after all to net-next.

Thanks.

^ permalink raw reply

* Re: [PATCH] ipv6: fix two typos in a comment in xfrm6_init()
From: RongQing Li @ 2012-11-09  3:04 UTC (permalink / raw)
  To: David Miller; +Cc: netdev
In-Reply-To: <20121108.213622.1170393152152755967.davem@davemloft.net>

2012/11/9 David Miller <davem@davemloft.net>:
> From: roy.qing.li@gmail.com
> Date: Thu,  8 Nov 2012 16:38:08 +0800
>
>> From: Li RongQing <roy.qing.li@gmail.com>
>>
>> Signed-off-by: Li RongQing <roy.qing.li@gmail.com>
>
> As Steffen stated, this comment is largely obsolete.

Thanks, I will resend new patch to remove this comments

-Roy

^ permalink raw reply

* Re: [PATCH net-next] netconsole: add oops_only module option
From: Cong Wang @ 2012-11-09  3:02 UTC (permalink / raw)
  To: Randy Dunlap; +Cc: netdev, David Miller
In-Reply-To: <509C0CCD.7020900@infradead.org>

On Thu, 2012-11-08 at 11:49 -0800, Randy Dunlap wrote:
> On 11/08/2012 05:42 AM, Cong Wang wrote:
> 
> > Some people wants to log only oops messages via netconsole,
> > (this is also why netoops was invented)
> > so add a module option for netconsole. This can be tuned
> > via /sys/module/netconsole/parameters/oops_only at run time
> > as well.
> > 
> 
> 
> Hi,
> 
> What does this do with panics?
> Do they set oops_in_progress?

Yes, panic() calls bust_spinlocks(1).

^ permalink raw reply

* Re: [PATCH] xfrm: remove redundant replay_esn check
From: David Miller @ 2012-11-09  3:00 UTC (permalink / raw)
  To: ulrich.weber; +Cc: steffen.klassert, netdev
In-Reply-To: <20121108101544.GA30309@uweber-WS>

From: Ulrich Weber <ulrich.weber@sophos.com>
Date: Thu, 8 Nov 2012 11:15:44 +0100

> x->replay_esn is already checked in if clause,
> so remove check and ident properly
> 
> Signed-off-by: Ulrich Weber <ulrich.weber@sophos.com>

Steffen, I assume you'll pick this one up.

^ permalink raw reply

* Re: [PATCH 2/2] irda: sh-irda: Remove SH7377 support
From: David Miller @ 2012-11-09  2:59 UTC (permalink / raw)
  To: nobuhiro.iwamatsu.yj; +Cc: netdev, samuel
In-Reply-To: <1352360667-9341-2-git-send-email-nobuhiro.iwamatsu.yj@renesas.com>

From: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Date: Thu,  8 Nov 2012 16:44:27 +0900

> The shmobile SH7377 already was removed from source tree.
> This remove SH7377 support for sh-irda.
> 
> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>

Applied.

^ permalink raw reply

* Re: [PATCH 1/2] irda: sh-irda: Remove SH7367 support
From: David Miller @ 2012-11-09  2:59 UTC (permalink / raw)
  To: nobuhiro.iwamatsu.yj; +Cc: netdev, samuel
In-Reply-To: <1352360667-9341-1-git-send-email-nobuhiro.iwamatsu.yj@renesas.com>

From: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
Date: Thu,  8 Nov 2012 16:44:26 +0900

> The shmobile SH7367 already was removed from source tree.
> This remove SH7367 support for sh-irda.
> 
> Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>

Applied.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: allow skb->head to be a page fragment
From: Li Yu @ 2012-11-09  2:50 UTC (permalink / raw)
  To: Eric Dumazet; +Cc: Linux Netdev List
In-Reply-To: <1352428675.19779.490.camel@edumazet-glaptop>

于 2012年11月09日 10:37, Eric Dumazet 写道:
> On Fri, 2012-11-09 at 10:31 +0800, Li Yu wrote:
>
>> I think that adding skb->frag_head indeed is a better choice, this means
>> I have to rework some NIC drivers :(
>
> Not sure what you mean, since most (if not all) NIC drivers already use
> skb->frag_head in their RX path.
>

skb = build_skb(data, 0); in bnx2 and bnx2x ......

:)

Yu

^ permalink raw reply

* Re: gro vs vlan in myri10ge
From: Eric Dumazet @ 2012-11-09  2:41 UTC (permalink / raw)
  To: Andrew Gallatin; +Cc: netdev
In-Reply-To: <509C6858.6010105@myri.com>

On Thu, 2012-11-08 at 21:20 -0500, Andrew Gallatin wrote:
> Hi,
> 
> I've wanted to convert myri10ge from LRO to GRO for quite a while.
> The problem I'm facing is that the NIC cannot perform hardware vlan
> tag offload, so GRO performance is far below LRO performance when
> receiving vlan tagged TCP traffic.
> 
> If a vlan tagged frame is passed to lro_receive_frags(), inet_lro will
> look at the encapsulated IPv4 frame and TCP aggregation will succeed.
> However, it appears that GRO will not do this.  When I patch the
> driver to use GRO, and configure a vlan interface, I see high CPU
> utilization and poor bandwidth when I'm receiving a netperf TCP stream
> on the vlan interface.  If I use LRO in an unpatched driver, then I
> see good receive performance in the same scenario.
> 
> What is the best way to "fix" this?
> 
> Unless I'm just using GRO wrong, it seems that the simplest thing for
> me to do is to claim NETIF_F_HW_VLAN_RX, but pop the tags in the
> driver so as to allow myri10ge to pass up a non-encapsulated frame the
> same way that (nearly?) every other 10GbE NIC does.  I've got a quick
> and dirty patch that confirms doing the vtag pop in the driver gives
> me roughly the same performance with GRO as I used to have with LRO.
> 
> Is this (popping vlan tags in the driver) acceptable, or is it
> too much of a layering violation?

Given GRO assumes NIC does hardware vlan offloading, I guess
I would chose to do that.

It seems unfortunate to add vlan decap in GRO path, already very
complex.

^ permalink raw reply

* Re: [PATCH 1/4 net-next] net: allow skb->head to be a page fragment
From: Eric Dumazet @ 2012-11-09  2:37 UTC (permalink / raw)
  To: Li Yu; +Cc: Linux Netdev List
In-Reply-To: <509C6AEF.4020300@gmail.com>

On Fri, 2012-11-09 at 10:31 +0800, Li Yu wrote:

> I think that adding skb->frag_head indeed is a better choice, this means 
> I have to rework some NIC drivers :(

Not sure what you mean, since most (if not all) NIC drivers already use
skb->frag_head in their RX path.

^ permalink raw reply

* Re: [PATCH] ipv6: fix two typos in a comment in xfrm6_init()
From: David Miller @ 2012-11-09  2:36 UTC (permalink / raw)
  To: roy.qing.li; +Cc: netdev
In-Reply-To: <1352363888-14068-1-git-send-email-roy.qing.li@gmail.com>

From: roy.qing.li@gmail.com
Date: Thu,  8 Nov 2012 16:38:08 +0800

> From: Li RongQing <roy.qing.li@gmail.com>
> 
> Signed-off-by: Li RongQing <roy.qing.li@gmail.com>

As Steffen stated, this comment is largely obsolete.

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox