@@ -781,7 +781,8 @@ static int ovs_flow_cmd_fill_stats(const struct sw_flow *flow,
ovs_flow_stats_get(flow, &stats, &used, &tcp_flags);
if (used &&
- nla_put_u64(skb, OVS_FLOW_ATTR_USED, ovs_flow_used_time(used)))
+ nla_put_u64_64bit(skb, OVS_FLOW_ATTR_USED, ovs_flow_used_time(used),
+ OVS_FLOW_ATTR_PAD))
return -EMSGSIZE;
if (stats.n_packets &&
@@ -142,5 +142,12 @@ void rpl___nla_put_64bit(struct sk_buff *skb, int attrtype, int attrlen,
#define __nla_reserve_64bit rpl___nla_reserve_64bit
struct nlattr *rpl___nla_reserve_64bit(struct sk_buff *skb, int attrtype,
int attrlen, int padattr);
+
+static inline int nla_put_u64_64bit(struct sk_buff *skb, int attrtype,
+ u64 value, int padattr)
+{
+ return nla_put_64bit(skb, attrtype, sizeof(u64), &value, padattr);
+}
+
#endif
#endif /* net/netlink.h */