[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAEP_g=_PQSx_OVcU47OJFKgO_MpWSKStmGnVB76vSm=Z7r6mvg@mail.gmail.com>
Date: Tue, 25 Sep 2012 14:55:13 -0700
From: Jesse Gross <jesse@...ira.com>
To: Stephen Hemminger <shemminger@...tta.com>
Cc: Chris Wright <chrisw@...hat.com>,
David Miller <davem@...emloft.net>, netdev@...r.kernel.org
Subject: Re: [PATCHv4 net-next] vxlan: virtual extensible lan
On Mon, Sep 24, 2012 at 2:50 PM, Stephen Hemminger
<shemminger@...tta.com> wrote:
> +static netdev_tx_t vxlan_xmit(struct sk_buff *skb, struct net_device *dev)
[...]
> + /* Do PMTU */
> + if (skb->protocol == htons(ETH_P_IP)) {
> + df |= old_iph->frag_off & htons(IP_DF);
> + if (df && mtu < pkt_len) {
> + icmp_send(skb, ICMP_DEST_UNREACH, ICMP_FRAG_NEEDED,
> + htonl(mtu));
> + ip_rt_put(rt);
> + goto tx_error;
> + }
> + }
> +#if IS_ENABLED(CONFIG_IPV6)
> + else if (skb->protocol == htons(ETH_P_IPV6)) {
> + if (mtu >= IPV6_MIN_MTU && mtu < pkt_len) {
> + icmpv6_send(skb, ICMPV6_PKT_TOOBIG, 0, mtu);
> + ip_rt_put(rt);
> + goto tx_error;
> + }
> + }
> +#endif
Won't this black hole packets if we need to generate ICMP messages?
Since we're doing switching and not routing here icmp_send() doesn't
necessarily have a route to the relevant endpoint. It looks like
Ethernet over GRE has this issue as well.
--
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