Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net
The BTF conflicts were simple overlapping changes. The virtio_net conflict was an overlap of a fix of statistics counter, happening alongisde a move over to a bonafide statistics structure rather than counting value on the stack. Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
@@ -211,6 +211,7 @@ static struct dp_meter *dp_meter_create(struct nlattr **a)
|
||||
if (!meter)
|
||||
return ERR_PTR(-ENOMEM);
|
||||
|
||||
meter->id = nla_get_u32(a[OVS_METER_ATTR_ID]);
|
||||
meter->used = div_u64(ktime_get_ns(), 1000 * 1000);
|
||||
meter->kbps = a[OVS_METER_ATTR_KBPS] ? 1 : 0;
|
||||
meter->keep_stats = !a[OVS_METER_ATTR_CLEAR];
|
||||
@@ -280,6 +281,10 @@ static int ovs_meter_cmd_set(struct sk_buff *skb, struct genl_info *info)
|
||||
u32 meter_id;
|
||||
bool failed;
|
||||
|
||||
if (!a[OVS_METER_ATTR_ID]) {
|
||||
return -ENODEV;
|
||||
}
|
||||
|
||||
meter = dp_meter_create(a);
|
||||
if (IS_ERR_OR_NULL(meter))
|
||||
return PTR_ERR(meter);
|
||||
@@ -298,11 +303,6 @@ static int ovs_meter_cmd_set(struct sk_buff *skb, struct genl_info *info)
|
||||
goto exit_unlock;
|
||||
}
|
||||
|
||||
if (!a[OVS_METER_ATTR_ID]) {
|
||||
err = -ENODEV;
|
||||
goto exit_unlock;
|
||||
}
|
||||
|
||||
meter_id = nla_get_u32(a[OVS_METER_ATTR_ID]);
|
||||
|
||||
/* Cannot fail after this. */
|
||||
|
Reference in New Issue
Block a user