projects
/
openwrt
/
staging
/
blogic.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
e87474a
)
ematch: Fix early ending of inverted containers.
author
Ignacy Gawędzki
<
[email protected]
>
Fri, 3 Oct 2014 13:44:48 +0000
(15:44 +0200)
committer
David S. Miller
<
[email protected]
>
Sun, 5 Oct 2014 00:49:46 +0000
(20:49 -0400)
The result of a negated container has to be inverted before checking for
early ending.
This fixes my previous attempt (
17c9c8232663a47f074b7452b9b034efda868ca7
) to
make inverted containers work correctly.
Signed-off-by: Ignacy Gawędzki <
[email protected]
>
Signed-off-by: David S. Miller <
[email protected]
>
net/sched/ematch.c
patch
|
blob
|
history
diff --git
a/net/sched/ematch.c
b/net/sched/ematch.c
index ad57f4444b9c65cdc7abe6eb588868c4e2b65cd2..f878fa16349af95251b9400e98a1837bf4eacb1f 100644
(file)
--- a/
net/sched/ematch.c
+++ b/
net/sched/ematch.c
@@
-526,9
+526,10
@@
pop_stack:
match_idx = stack[--stackp];
cur_match = tcf_em_get_match(tree, match_idx);
+ if (tcf_em_is_inverted(cur_match))
+ res = !res;
+
if (tcf_em_early_end(cur_match, res)) {
- if (tcf_em_is_inverted(cur_match))
- res = !res;
goto pop_stack;
} else {
match_idx++;