[dpdk-dev] app: fix for lpm in ip_pipeline

Message ID 1458204445-7480-1-git-send-email-michalx.k.jastrzebski@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Thomas Monjalon
Headers

Commit Message

Michal Jastrzebski March 17, 2016, 8:47 a.m. UTC
  From: Michal Kobylinski <michalx.kobylinski@intel.com>

Updated ip_pipeline app is using new changes from LPM library 
(Increased number of next hops and added new config structure 
for LPM IPv4).

Fixes: 7164439d017d ("lpm: add a new config structure for IPv4")

Signed-off-by: Michal Kobylinski <michalx.kobylinski@intel.com>
Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>
---
 app/test-pipeline/pipeline_lpm.c                    | 6 ++++++
 examples/ip_pipeline/pipeline/pipeline_routing_be.c | 6 ++++++
 2 files changed, 12 insertions(+)
  

Comments

Thomas Monjalon March 18, 2016, 10:51 a.m. UTC | #1
2016-03-17 09:47, Michal Jastrzebski:
> From: Michal Kobylinski <michalx.kobylinski@intel.com>
> 
> Updated ip_pipeline app is using new changes from LPM library 
> (Increased number of next hops and added new config structure 
> for LPM IPv4).
> 
> Fixes: 7164439d017d ("lpm: add a new config structure for IPv4")

Fixes: f1f7261838b3 ("lpm: add a new config structure for IPv4")

> Signed-off-by: Michal Kobylinski <michalx.kobylinski@intel.com>
> Acked-by: Cristian Dumitrescu <cristian.dumitrescu@intel.com>

Applied, thanks
  

Patch

diff --git a/app/test-pipeline/pipeline_lpm.c b/app/test-pipeline/pipeline_lpm.c
index 916abd4..ecea6b3 100644
--- a/app/test-pipeline/pipeline_lpm.c
+++ b/app/test-pipeline/pipeline_lpm.c
@@ -47,6 +47,10 @@ 
 
 #include "main.h"
 
+#ifndef PIPELINE_LPM_TABLE_NUMBER_TABLE8s
+#define PIPELINE_LPM_TABLE_NUMBER_TABLE8s 256
+#endif
+
 void
 app_main_loop_worker_pipeline_lpm(void) {
 	struct rte_pipeline_params pipeline_params = {
@@ -113,6 +117,8 @@  app_main_loop_worker_pipeline_lpm(void) {
 		struct rte_table_lpm_params table_lpm_params = {
 			.name = "LPM",
 			.n_rules = 1 << 24,
+			.number_tbl8s = PIPELINE_LPM_TABLE_NUMBER_TABLE8s,
+			.flags = 0,
 			.entry_unique_size =
 				sizeof(struct rte_pipeline_table_entry),
 			.offset = APP_METADATA_OFFSET(32),
diff --git a/examples/ip_pipeline/pipeline/pipeline_routing_be.c b/examples/ip_pipeline/pipeline/pipeline_routing_be.c
index 8342b7b..431c636 100644
--- a/examples/ip_pipeline/pipeline/pipeline_routing_be.c
+++ b/examples/ip_pipeline/pipeline/pipeline_routing_be.c
@@ -67,6 +67,10 @@ 
 
 #define MAC_SRC_DEFAULT 0x112233445566
 
+#ifndef PIPELINE_ROUTING_LPM_TABLE_NUMBER_TABLE8s
+#define PIPELINE_ROUTING_LPM_TABLE_NUMBER_TABLE8s 256
+#endif
+
 struct pipeline_routing {
 	struct pipeline p;
 	struct pipeline_routing_params params;
@@ -1284,6 +1288,8 @@  pipeline_routing_init(struct pipeline_params *params,
 		struct rte_table_lpm_params table_lpm_params = {
 			.name = p->name,
 			.n_rules = p_rt->params.n_routes,
+			.number_tbl8s = PIPELINE_ROUTING_LPM_TABLE_NUMBER_TABLE8s,
+			.flags = 0,
 			.entry_unique_size = sizeof(struct routing_table_entry),
 			.offset = p_rt->params.ip_hdr_offset +
 				__builtin_offsetof(struct ipv4_hdr, dst_addr),