| To: | "David S. Miller" <davem@xxxxxxxxxxxxx> |
|---|---|
| Subject: | [PATCH PKT_SCHED 1/4]: cls_rsvp: fix tcf_exts fallout |
| From: | Patrick McHardy <kaber@xxxxxxxxx> |
| Date: | Wed, 19 Jan 2005 05:38:42 +0100 |
| Cc: | Maillist netdev <netdev@xxxxxxxxxxx> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.7.3) Gecko/20041008 Debian/1.7.3-5 |
# This is a BitKeeper generated diff -Nru style patch.
#
# ChangeSet
# 2005/01/19 02:49:12+01:00 kaber@xxxxxxxxxxxx
# [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: Patrick McHardy <kaber@xxxxxxxxx>
#
# net/sched/cls_rsvp.h
# 2005/01/19 02:49:04+01:00 kaber@xxxxxxxxxxxx +8 -8
# [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: Patrick McHardy <kaber@xxxxxxxxx>
#
# net/sched/cls_route.c
# 2005/01/19 02:49:04+01:00 kaber@xxxxxxxxxxxx +14 -14
# [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: Patrick McHardy <kaber@xxxxxxxxx>
#
diff -Nru a/net/sched/cls_route.c b/net/sched/cls_route.c
--- a/net/sched/cls_route.c 2005-01-19 05:29:45 +01:00
+++ b/net/sched/cls_route.c 2005-01-19 05:29:45 +01:00
@@ -125,20 +125,20 @@
return 32;
}
-#define ROUTE4_APPLY_RESULT() \
- do { \
- *res = f->res; \
- if (tcf_exts_is_available(&f->exts)) { \
- int r = tcf_exts_exec(skb, &f->exts, res); \
- if (r < 0) { \
- dont_cache = 1; \
- continue; \
- } \
- return r; \
- } else if (!dont_cache) \
- route4_set_fastmap(head, id, iif, f); \
- return 0; \
- } while(0)
+#define ROUTE4_APPLY_RESULT() \
+{ \
+ *res = f->res; \
+ if (tcf_exts_is_available(&f->exts)) { \
+ int r = tcf_exts_exec(skb, &f->exts, res); \
+ if (r < 0) { \
+ dont_cache = 1; \
+ continue; \
+ } \
+ return r; \
+ } else if (!dont_cache) \
+ route4_set_fastmap(head, id, iif, f); \
+ return 0; \
+}
static int route4_classify(struct sk_buff *skb, struct tcf_proto *tp,
struct tcf_result *res)
diff -Nru a/net/sched/cls_rsvp.h b/net/sched/cls_rsvp.h
--- a/net/sched/cls_rsvp.h 2005-01-19 05:29:44 +01:00
+++ b/net/sched/cls_rsvp.h 2005-01-19 05:29:45 +01:00
@@ -123,14 +123,14 @@
.action = TCA_RSVP_ACT
};
-#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)
+#define RSVP_APPLY_RESULT() \
+{ \
+ int r = tcf_exts_exec(skb, &f->exts, res); \
+ if (r < 0) \
+ continue; \
+ else if (r > 0) \
+ return r; \
+}
static int rsvp_classify(struct sk_buff *skb, struct tcf_proto *tp,
struct tcf_result *res)
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | [PATCH PKT_SCHED 0/4]: more fixes, Patrick McHardy |
|---|---|
| Next by Date: | [PATCH PKT_SCHED 2/4]: cls_api.c: fix module reference leak on module load, Patrick McHardy |
| Previous by Thread: | [PATCH PKT_SCHED 0/4]: more fixes, Patrick McHardy |
| Next by Thread: | [PATCH PKT_SCHED 2/4]: cls_api.c: fix module reference leak on module load, Patrick McHardy |
| Indexes: | [Date] [Thread] [Top] [All Lists] |