X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=examples%2Fip_pipeline%2Fmain.c;h=97d1e91c2b4b704861f0ceeb751d1e5b9b9d486d;hb=f9acaf84e923066344bd3467e4703da66f1f23a8;hp=edfb52327d670ea5064478f863ac1512a863c2c2;hpb=133c2c6565d6d05432be2e2bafc0e08ef0fd9221;p=dpdk.git diff --git a/examples/ip_pipeline/main.c b/examples/ip_pipeline/main.c index edfb52327d..97d1e91c2b 100644 --- a/examples/ip_pipeline/main.c +++ b/examples/ip_pipeline/main.c @@ -8,12 +8,20 @@ #include #include +#include #include #include "cli.h" #include "conn.h" +#include "kni.h" +#include "cryptodev.h" #include "link.h" #include "mempool.h" +#include "pipeline.h" +#include "swq.h" +#include "tap.h" +#include "thread.h" +#include "tmgr.h" static const char usage[] = "%s EAL_ARGS -- [-h HOST] [-p PORT] [-s SCRIPT]\n"; @@ -175,6 +183,75 @@ main(int argc, char **argv) return status; } + /* SWQ */ + status = swq_init(); + if (status) { + printf("Error: SWQ initialization failed (%d)\n", status); + return status; + } + + /* Traffic Manager */ + status = tmgr_init(); + if (status) { + printf("Error: TMGR initialization failed (%d)\n", status); + return status; + } + + /* TAP */ + status = tap_init(); + if (status) { + printf("Error: TAP initialization failed (%d)\n", status); + return status; + } + + /* KNI */ + status = kni_init(); + if (status) { + printf("Error: KNI initialization failed (%d)\n", status); + return status; + } + + /* Sym Crypto */ + status = cryptodev_init(); + if (status) { + printf("Error: Cryptodev initialization failed (%d)\n", + status); + return status; + } + + /* Action */ + status = port_in_action_profile_init(); + if (status) { + printf("Error: Input port action profile initialization failed (%d)\n", status); + return status; + } + + status = table_action_profile_init(); + if (status) { + printf("Error: Action profile initialization failed (%d)\n", + status); + return status; + } + + /* Pipeline */ + status = pipeline_init(); + if (status) { + printf("Error: Pipeline initialization failed (%d)\n", status); + return status; + } + + /* Thread */ + status = thread_init(); + if (status) { + printf("Error: Thread initialization failed (%d)\n", status); + return status; + } + + rte_eal_mp_remote_launch( + thread_main, + NULL, + SKIP_MASTER); + /* Script */ if (app.script_name) cli_script_process(app.script_name, @@ -186,5 +263,7 @@ main(int argc, char **argv) conn_poll_for_conn(conn); conn_poll_for_msg(conn); + + kni_handle_request(); } }