| From foo@baz Wed Jun 18 21:53:03 PDT 2014 |
| From: Michal Schmidt <mschmidt@redhat.com> |
| Date: Mon, 2 Jun 2014 18:25:02 +0200 |
| Subject: netlink: rate-limit leftover bytes warning and print process name |
| Status: RO |
| Content-Length: 1053 |
| Lines: 34 |
| |
| From: Michal Schmidt <mschmidt@redhat.com> |
| |
| [ Upstream commit bfc5184b69cf9eeb286137640351c650c27f118a ] |
| |
| Any process is able to send netlink messages with leftover bytes. |
| Make the warning rate-limited to prevent too much log spam. |
| |
| The warning is supposed to help find userspace bugs, so print the |
| triggering command name to implicate the buggy program. |
| |
| [v2: Use pr_warn_ratelimited instead of printk_ratelimited.] |
| |
| Signed-off-by: Michal Schmidt <mschmidt@redhat.com> |
| Signed-off-by: David S. Miller <davem@davemloft.net> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| --- |
| lib/nlattr.c | 5 +++-- |
| 1 file changed, 3 insertions(+), 2 deletions(-) |
| |
| --- a/lib/nlattr.c |
| +++ b/lib/nlattr.c |
| @@ -13,6 +13,7 @@ |
| #include <linux/skbuff.h> |
| #include <linux/string.h> |
| #include <linux/types.h> |
| +#include <linux/ratelimit.h> |
| #include <net/netlink.h> |
| |
| static const u16 nla_attr_minlen[NLA_TYPE_MAX+1] = { |
| @@ -197,8 +198,8 @@ int nla_parse(struct nlattr **tb, int ma |
| } |
| |
| if (unlikely(rem > 0)) |
| - printk(KERN_WARNING "netlink: %d bytes leftover after parsing " |
| - "attributes.\n", rem); |
| + pr_warn_ratelimited("netlink: %d bytes leftover after parsing attributes in process `%s'.\n", |
| + rem, current->comm); |
| |
| err = 0; |
| errout: |