[dpdk-dev] [PATCH v5 00/11] ip_pipeline: ip_pipeline application enhancements

Mrzyglod, DanielX T danielx.t.mrzyglod at intel.com
Mon Jul 6 12:37:37 CEST 2015


NACK 
ICC Compilation Errors:


Pipeline/pipeline_routing_be.c:
/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_routing_be.c(740): error #188: enumerated type mixed with another type
                .flags = 0,
                         ^
ICC wants name like PIPELINE_ROUTING_ROUTE_LOCAL but got number instead.

Pipeline/Pipeline_routing.c:
/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_routing.c(851): error #188: enumerated type mixed with another type
        rt_params.flags = 0; /* remote route */
                        ^

The problem is that the value of PIPELINE_ROUTING_ROUTE_LOCAL is 1.

After this change it looks ok. 
Solution:
We need add another enum:
PIPELINE_ROUTING_ROUTE_REMOTE


ICC_I686:
Init.c:
/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/init.c(90): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%016lx", expecting argument of type "unsigned long"
        APP_LOG(app, HIGH, "CPU core mask = 0x%016lx", app->core_mask);
        ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/init.c(103): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lx", expecting argument of type "unsigned long"
        snprintf(buffer, sizeof(buffer), "-c%lx", app->core_mask);
                                                  ^

pipeline_common_fe:
/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(525): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.stats.n_pkts_in,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(526): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.n_pkts_dropped_by_ah,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(527): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.stats.n_pkts_drop);
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(611): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.stats.n_pkts_in,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(612): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.n_pkts_dropped_by_ah,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(613): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.stats.n_pkts_drop);
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(698): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.stats.n_pkts_in,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(699): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.stats.n_pkts_lookup_miss,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(700): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.n_pkts_dropped_by_lkp_hit_ah,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(701): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.n_pkts_dropped_lkp_hit,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(702): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.n_pkts_dropped_by_lkp_miss_ah,
                ^

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_common_fe.c(703): error #181: argument of type "uint64_t={unsigned long long}" is incompatible with format "%lu", expecting argument of type "unsigned long"
                stats.n_pkts_dropped_lkp_miss);
                ^
pipeline_routing_be.c:

/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_routing_be.c(740): error #188: enumerated type mixed with another type
                .flags = 0,
                         ^
pipeline_routing.c:
/mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_routing.c(851): error #188: enumerated type mixed with another type
        rt_params.flags = 0; /* remote route */
                        ^

compilation aborted for /mnt/shared/dtmrzglx/dpdk_pipeline/examples/ip_pipeline/pipeline/pipeline_routing.c (code 2)
/mnt/shared/dtmrzglx/macro_new_for_pipelines/mk/internal/rte.compile-pre.mk:126: recipe for target 'pipeline_routing.o' failed

> -----Original Message-----
> From: dev [mailto:dev-bounces at dpdk.org] On Behalf Of Maciej Gajdzica
> Sent: Monday, July 06, 2015 11:29 AM
> To: dev at dpdk.org
> Subject: [dpdk-dev] [PATCH v5 00/11] ip_pipeline: ip_pipeline application
> enhancements
> 
> This patchset enhances functionality of ip_pipeline application. New config
> file syntax is introduced, so parser is changed. Changed structure of the
> application. Now every global variable is stored in app_struct in app.h.
> Syntax of pipeline cli commands was changed. Implementation of cli commands
> for every pipeline is moved to the separate file.
> 
> Changes in v2:
> - renamed some files
> - added more config files
> - reworked flow classification pipeline implementation
> - fixed some bugs
> 
> Changes in v3:
> - fixed checkpatch errors
> - fixed bug with message queues
> - fixed bug with application log
> 
> Changes in v4:
> - fixed build issue with gcc 5
> - fixed bugs in flow classification and firewall pipelines
> 
> Changes in v5:
> - fixed build issue with clang 3.6
> 
> Daniel Mrzyglod (1):
>   ip_pipeline: added new implementation of firewall pipeline
> 
> Jasvinder Singh (3):
>   ip_pipeline: added config checks
>   ip_pipeline: added master pipeline
>   ip_pipeline: added new implementation of passthrough pipeline
> 
> Maciej Gajdzica (6):
>   ip_pipeline: modified init to match new params      struct
>   ip_pipeline: moved pipelines to separate folder
>   ip_pipeline: added application thread
>   ip_pipeline: moved config files to separate folder
>   ip_pipeline: added new implementation of routing pipeline
>   ip_pipeline: added new implementation of flow classification pipeline
> 
> Pawel Wodkowski (1):
>   ip_pipeline: add parsing for config files with new syntax
> 
>  examples/ip_pipeline/Makefile                      |   36 +-
>  examples/ip_pipeline/app.h                         |  905 ++++++++
>  examples/ip_pipeline/cmdline.c                     | 1976 ----------------
>  examples/ip_pipeline/config.c                      |  419 ----
>  examples/ip_pipeline/config/ip_pipeline.cfg        |    9 +
>  examples/ip_pipeline/config/ip_pipeline.sh         |    5 +
>  examples/ip_pipeline/config/tm_profile.cfg         |  105 +
>  examples/ip_pipeline/config_check.c                |  397 ++++
>  examples/ip_pipeline/config_parse.c                | 2456 ++++++++++++++++++++
>  examples/ip_pipeline/config_parse_tm.c             |  446 ++++
>  examples/ip_pipeline/cpu_core_map.c                |  492 ++++
>  examples/ip_pipeline/cpu_core_map.h                |   69 +
>  examples/ip_pipeline/init.c                        | 1612 +++++++++----
>  examples/ip_pipeline/ip_pipeline.cfg               |   56 -
>  examples/ip_pipeline/ip_pipeline.sh                |   18 -
>  examples/ip_pipeline/main.c                        |  137 +-
>  examples/ip_pipeline/main.h                        |  298 ---
>  examples/ip_pipeline/pipeline.h                    |   87 +
>  examples/ip_pipeline/pipeline/hash_func.h          |  351 +++
>  .../ip_pipeline/pipeline/pipeline_actions_common.h |  119 +
>  examples/ip_pipeline/pipeline/pipeline_common_be.c |  206 ++
>  examples/ip_pipeline/pipeline/pipeline_common_be.h |  163 ++
>  examples/ip_pipeline/pipeline/pipeline_common_fe.c | 1324 +++++++++++
>  examples/ip_pipeline/pipeline/pipeline_common_fe.h |  228 ++
>  examples/ip_pipeline/pipeline/pipeline_firewall.c  | 1001 ++++++++
>  examples/ip_pipeline/pipeline/pipeline_firewall.h  |   63 +
>  .../ip_pipeline/pipeline/pipeline_firewall_be.c    |  740 ++++++
>  .../ip_pipeline/pipeline/pipeline_firewall_be.h    |  138 ++
>  .../pipeline/pipeline_flow_classification.c        | 2057 ++++++++++++++++
>  .../pipeline/pipeline_flow_classification.h        |  105 +
>  .../pipeline/pipeline_flow_classification_be.c     |  589 +++++
>  .../pipeline/pipeline_flow_classification_be.h     |  140 ++
>  examples/ip_pipeline/pipeline/pipeline_master.c    |   47 +
>  examples/ip_pipeline/pipeline/pipeline_master.h    |   41 +
>  examples/ip_pipeline/pipeline/pipeline_master_be.c |  150 ++
>  examples/ip_pipeline/pipeline/pipeline_master_be.h |   41 +
>  .../ip_pipeline/pipeline/pipeline_passthrough.c    |   47 +
>  .../ip_pipeline/pipeline/pipeline_passthrough.h    |   41 +
>  .../ip_pipeline/pipeline/pipeline_passthrough_be.c |  772 ++++++
>  .../ip_pipeline/pipeline/pipeline_passthrough_be.h |   41 +
>  examples/ip_pipeline/pipeline/pipeline_routing.c   | 1541 ++++++++++++
>  examples/ip_pipeline/pipeline/pipeline_routing.h   |   99 +
>  .../ip_pipeline/pipeline/pipeline_routing_be.c     |  869 +++++++
>  .../ip_pipeline/pipeline/pipeline_routing_be.h     |  230 ++
>  examples/ip_pipeline/pipeline_be.h                 |  256 ++
>  examples/ip_pipeline/pipeline_firewall.c           |  313 ---
>  .../ip_pipeline/pipeline_flow_classification.c     |  306 ---
>  examples/ip_pipeline/pipeline_ipv4_frag.c          |  184 --
>  examples/ip_pipeline/pipeline_ipv4_ras.c           |  181 --
>  examples/ip_pipeline/pipeline_passthrough.c        |  213 --
>  examples/ip_pipeline/pipeline_routing.c            |  474 ----
>  examples/ip_pipeline/pipeline_rx.c                 |  385 ---
>  examples/ip_pipeline/pipeline_tx.c                 |  283 ---
>  examples/ip_pipeline/thread.c                      |  110 +
>  54 files changed, 17702 insertions(+), 5669 deletions(-)
>  create mode 100644 examples/ip_pipeline/app.h
>  delete mode 100644 examples/ip_pipeline/cmdline.c
>  delete mode 100644 examples/ip_pipeline/config.c
>  create mode 100644 examples/ip_pipeline/config/ip_pipeline.cfg
>  create mode 100644 examples/ip_pipeline/config/ip_pipeline.sh
>  create mode 100644 examples/ip_pipeline/config/tm_profile.cfg
>  create mode 100644 examples/ip_pipeline/config_check.c
>  create mode 100644 examples/ip_pipeline/config_parse.c
>  create mode 100644 examples/ip_pipeline/config_parse_tm.c
>  create mode 100644 examples/ip_pipeline/cpu_core_map.c
>  create mode 100644 examples/ip_pipeline/cpu_core_map.h
>  delete mode 100644 examples/ip_pipeline/ip_pipeline.cfg
>  delete mode 100644 examples/ip_pipeline/ip_pipeline.sh
>  delete mode 100644 examples/ip_pipeline/main.h
>  create mode 100644 examples/ip_pipeline/pipeline.h
>  create mode 100644 examples/ip_pipeline/pipeline/hash_func.h
>  create mode 100644
> examples/ip_pipeline/pipeline/pipeline_actions_common.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_be.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_be.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_fe.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_common_fe.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall_be.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_firewall_be.h
>  create mode 100644
> examples/ip_pipeline/pipeline/pipeline_flow_classification.c
>  create mode 100644
> examples/ip_pipeline/pipeline/pipeline_flow_classification.h
>  create mode 100644
> examples/ip_pipeline/pipeline/pipeline_flow_classification_be.c
>  create mode 100644
> examples/ip_pipeline/pipeline/pipeline_flow_classification_be.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_master.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_master.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_master_be.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_master_be.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough_be.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_passthrough_be.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing.h
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing_be.c
>  create mode 100644 examples/ip_pipeline/pipeline/pipeline_routing_be.h
>  create mode 100644 examples/ip_pipeline/pipeline_be.h
>  delete mode 100644 examples/ip_pipeline/pipeline_firewall.c
>  delete mode 100644 examples/ip_pipeline/pipeline_flow_classification.c
>  delete mode 100644 examples/ip_pipeline/pipeline_ipv4_frag.c
>  delete mode 100644 examples/ip_pipeline/pipeline_ipv4_ras.c
>  delete mode 100644 examples/ip_pipeline/pipeline_passthrough.c
>  delete mode 100644 examples/ip_pipeline/pipeline_routing.c
>  delete mode 100644 examples/ip_pipeline/pipeline_rx.c
>  delete mode 100644 examples/ip_pipeline/pipeline_tx.c
>  create mode 100644 examples/ip_pipeline/thread.c
> 
> --
> 1.7.9.5



More information about the dev mailing list