[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1483731621.9712.31.camel@edumazet-glaptop3.roam.corp.google.com>
Date: Fri, 06 Jan 2017 11:40:21 -0800
From: Eric Dumazet <eric.dumazet@...il.com>
To: Jesper Dangaard Brouer <brouer@...hat.com>
Cc: netdev@...r.kernel.org
Subject: Re: [net-next PATCH] net: reduce cycles spend on ICMP replies that
gets rate limited
On Fri, 2017-01-06 at 18:39 +0100, Jesper Dangaard Brouer wrote:
> @@ -648,13 +668,17 @@ void icmp_send(struct sk_buff *skb_in, int type, int code, __be32 info)
> }
> }
>
> - icmp_param = kmalloc(sizeof(*icmp_param), GFP_ATOMIC);
> - if (!icmp_param)
> - return;
> -
> sk = icmp_xmit_lock(net);
> if (!sk)
> - goto out_free;
> + goto out;
> +
> + /* Check global sysctl_icmp_msgs_per_sec ratelimit */
> + if (!icmpv4_global_allow(net, type, code))
> + goto out_unlock;
> +
> + icmp_param = kmalloc(sizeof(*icmp_param), GFP_ATOMIC);
> + if (!icmp_param)
> + goto out_unlock;
Truth be told, I have no idea why we allocate dynamic memory for "struct
icmp_bxm " : It is 112 bytes.
Powered by blists - more mailing lists