lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Tue, 28 Jan 2014 01:27:07 +0100 From: Hannes Frederic Sowa <hannes@...essinduktion.org> To: Eric Dumazet <eric.dumazet@...il.com> Cc: Florian Westphal <fw@...len.de>, netdev@...r.kernel.org Subject: Re: [PATCH 2/2] net: ip, ipv6: handle gso skbs in forwarding path On Mon, Jan 27, 2014 at 10:22:47AM -0800, Eric Dumazet wrote: > On Mon, 2014-01-27 at 09:22 +0100, Florian Westphal wrote: > > > +/* called if GSO skb needs to be fragmented on forward. */ > > +static int ip_forward_finish_gso(struct sk_buff *skb) > > +{ > > + netdev_features_t features = netif_skb_features(skb); netif_skb_features uses skb->dev for determination of offloading features but we actually need rt->dst.dev, no? > > + struct sk_buff *segs; > > + int ret = 0; > > + > > + segs = skb_gso_segment(skb, features & ~NETIF_F_GSO_MASK); > > + if (IS_ERR(segs)) { > > + kfree_skb(skb); > > + return -ENOMEM; > > + } > > + > > + consume_skb(skb); > > + > > + do { > > + struct sk_buff *nskb = segs->next; > > + int err; > > + > > + segs->next = NULL; > > + err = dst_output(segs); > > + > > + if (err && ret == 0) > > + ret = err; > > + segs = nskb; > > + } while (segs); > > + > > + return ret; > > +} > > + > > Its still unclear if this is the best strategy. > > TCP stream not using DF flag are very unlikely to care if we adjust > their MTU (lowering gso_size) at this point ? UDP shouldn't be a problem, too. Greetings, Hannes -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to majordomo@...r.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists