diff options
author | Nicolas Dichtel <nicolas.dichtel@6wind.com> | 2016-04-26 10:06:18 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-04-26 12:00:49 -0400 |
commit | 9854518ea04db33738602d45ebc96a200e6f5198 (patch) | |
tree | 96d3d6f4024f7a79010bea763f5922315d7bd63f /net/sched/cls_u32.c | |
parent | b676338fb3aab0b63b4a2489feb8f35003db22e8 (diff) | |
download | linux-stable-9854518ea04db33738602d45ebc96a200e6f5198.tar.gz linux-stable-9854518ea04db33738602d45ebc96a200e6f5198.tar.bz2 linux-stable-9854518ea04db33738602d45ebc96a200e6f5198.zip |
sched: align nlattr properly when needed
Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/sched/cls_u32.c')
-rw-r--r-- | net/sched/cls_u32.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/net/sched/cls_u32.c b/net/sched/cls_u32.c index 563cdad76448..e64877a3c084 100644 --- a/net/sched/cls_u32.c +++ b/net/sched/cls_u32.c @@ -1140,9 +1140,10 @@ static int u32_dump(struct net *net, struct tcf_proto *tp, unsigned long fh, gpf->kcnts[i] += pf->kcnts[i]; } - if (nla_put(skb, TCA_U32_PCNT, - sizeof(struct tc_u32_pcnt) + n->sel.nkeys*sizeof(u64), - gpf)) { + if (nla_put_64bit(skb, TCA_U32_PCNT, + sizeof(struct tc_u32_pcnt) + + n->sel.nkeys * sizeof(u64), + gpf, TCA_U32_PAD)) { kfree(gpf); goto nla_put_failure; } |