git.droids-corp.org
/
dpdk.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
2e715e5
)
net/ice: fix flow director rule duplication check
author
Yahui Cao
<yahui.cao@intel.com>
Tue, 19 Nov 2019 16:01:00 +0000
(
00:01
+0800)
committer
Ferruh Yigit
<ferruh.yigit@intel.com>
Wed, 20 Nov 2019 16:36:06 +0000
(17:36 +0100)
When FDIR filter detects duplicated rule and then returns EEXIST, ice
flow will capture this error and return immediately.
Fixes:
4e27d3ed02bd
("net/ice: fix flow API framework")
Signed-off-by: Yahui Cao <yahui.cao@intel.com>
Acked-by: Qi Zhang <qi.z.zhang@intel.com>
drivers/net/ice/ice_generic_flow.c
patch
|
blob
|
history
diff --git
a/drivers/net/ice/ice_generic_flow.c
b/drivers/net/ice/ice_generic_flow.c
index
5594f85
..
1d8c834
100644
(file)
--- a/
drivers/net/ice/ice_generic_flow.c
+++ b/
drivers/net/ice/ice_generic_flow.c
@@
-1698,6
+1698,8
@@
ice_parse_engine_create(struct ice_adapter *ad,
void *temp;
TAILQ_FOREACH_SAFE(parser_node, parser_list, node, temp) {
+ int ret;
+
if (parser_node->parser->parse_pattern_action(ad,
parser_node->parser->array,
parser_node->parser->array_len,
@@
-1712,8
+1714,11
@@
ice_parse_engine_create(struct ice_adapter *ad,
continue;
}
- if (!(engine->create(ad, flow, *meta, error)))
+ ret = engine->create(ad, flow, *meta, error);
+ if (ret == 0)
return engine;
+ else if (ret == -EEXIST)
+ return NULL;
}
return NULL;
}