Commit fb2eef41 authored by Patrick McHardy's avatar Patrick McHardy

[PKT_SCHED]: cls_rsvp: fix tcf_exts fallout

The continue is supposed to continue the outer loop, not break
out of the do { } while (0) loop. cls_route.c is also changed
in a similar way for clarity, although it behaved correctly.
Signed-off-by: default avatarPatrick McHardy <kaber@trash.net>
parent 203956f6
......@@ -126,7 +126,7 @@ static __inline__ int route4_hash_wild(void)
}
#define ROUTE4_APPLY_RESULT() \
do { \
{ \
*res = f->res; \
if (tcf_exts_is_available(&f->exts)) { \
int r = tcf_exts_exec(skb, &f->exts, res); \
......@@ -138,7 +138,7 @@ static __inline__ int route4_hash_wild(void)
} else if (!dont_cache) \
route4_set_fastmap(head, id, iif, f); \
return 0; \
} while(0)
}
static int route4_classify(struct sk_buff *skb, struct tcf_proto *tp,
struct tcf_result *res)
......
......@@ -124,13 +124,13 @@ static struct tcf_ext_map rsvp_ext_map = {
};
#define RSVP_APPLY_RESULT() \
do { \
{ \
int r = tcf_exts_exec(skb, &f->exts, res); \
if (r < 0) \
continue; \
else if (r > 0) \
return r; \
} while(0)
}
static int rsvp_classify(struct sk_buff *skb, struct tcf_proto *tp,
struct tcf_result *res)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment