[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAOMZO5B6_7ADAfGNFgx2MmYDAMQVR6MF_0c-F_LgfQ6sKv1kaA@mail.gmail.com>
Date: Tue, 3 Sep 2013 09:18:35 -0300
From: Fabio Estevam <festevam@...il.com>
To: Thomas Graf <tgraf@...g.ch>
Cc: "David S. Miller" <davem@...emloft.net>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
Eric Dumazet <eric.dumazet@...il.com>,
Hannes Frederic Sowa <hannes@...essinduktion.org>,
Stephen Warren <swarren@...dotorg.org>
Subject: Re: [PATCH v2] ipv6: Don't depend on per socket memory for neighbour
discovery messages
On Tue, Sep 3, 2013 at 8:37 AM, Thomas Graf <tgraf@...g.ch> wrote:
> Allocating skbs when sending out neighbour discovery messages
> currently uses sock_alloc_send_skb() based on a per net namespace
> socket and thus share a socket wmem buffer space.
>
> If a netdevice is temporarily unable to transmit due to carrier
> loss or for other reasons, the queued up ndisc messages will cosnume
> all of the wmem space and will thus prevent from any more skbs to
> be allocated even for netdevices that are able to transmit packets.
>
> The number of neighbour discovery messages sent is very limited,
> use of alloc_skb() bypasses the socket wmem buffer size enforcement
> while the manual call to skb_set_owner_w() maintains the socket
> reference needed for the IPv6 output path.
>
> This patch has orginally been posted by Eric Dumazet in a modified
> form.
>
> Signed-off-by: Thomas Graf <tgraf@...g.ch>
> Cc: Eric Dumazet <eric.dumazet@...il.com>
> Cc: Hannes Frederic Sowa <hannes@...essinduktion.org>
> Cc: Stephen Warren <swarren@...dotorg.org>
> Cc: Fabio Estevam <festevam@...il.com>
I don't get the system hang that I used to see with the previous
version on my ARM board, so
Tested-by: Fabio Estevam <fabio.estevam@...escale.com>
--
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