diff options
-rw-r--r-- | net/sched/act_api.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/net/sched/act_api.c b/net/sched/act_api.c index 9b2e3975be0b..599423cc9d0d 100644 --- a/net/sched/act_api.c +++ b/net/sched/act_api.c | |||
@@ -250,15 +250,17 @@ tcf_action_dump(struct sk_buff *skb, struct tc_action *act, int bind, int ref) | |||
250 | RTA_PUT(skb, a->order, 0, NULL); | 250 | RTA_PUT(skb, a->order, 0, NULL); |
251 | err = tcf_action_dump_1(skb, a, bind, ref); | 251 | err = tcf_action_dump_1(skb, a, bind, ref); |
252 | if (err < 0) | 252 | if (err < 0) |
253 | goto rtattr_failure; | 253 | goto errout; |
254 | r->rta_len = skb->tail - (u8*)r; | 254 | r->rta_len = skb->tail - (u8*)r; |
255 | } | 255 | } |
256 | 256 | ||
257 | return 0; | 257 | return 0; |
258 | 258 | ||
259 | rtattr_failure: | 259 | rtattr_failure: |
260 | err = -EINVAL; | ||
261 | errout: | ||
260 | skb_trim(skb, b - skb->data); | 262 | skb_trim(skb, b - skb->data); |
261 | return -err; | 263 | return err; |
262 | } | 264 | } |
263 | 265 | ||
264 | struct tc_action *tcf_action_init_1(struct rtattr *rta, struct rtattr *est, | 266 | struct tc_action *tcf_action_init_1(struct rtattr *rta, struct rtattr *est, |