On 8/17/2017 10:08 AM, Jiayu Hu wrote: > The GRO library provides two reassembly modes: lightweight mode and > heavyweight mode. This patch is to support the heavyweight mode in > csum forwarding engine. > > With the command "set port <port_id> gro (heavymode|lightmode) (on|off)", > users can select the lightweight mode or the heavyweight mode to use. With > the command "set gro flush interval <num>", users can set the interval of > flushing GROed packets from reassembly tables for the heavyweight mode. > With the command "show port <port_id> gro", users can display GRO > configuration. > > Signed-off-by: Jiayu Hu <jiayu...@intel.com>
<...> > + /* create a gro context for each lcore */ > + gro_param.gro_types = RTE_GRO_TCP_IPV4; > + gro_param.max_flow_num = GRO_MAX_FLUSH_INTERVAL; > + gro_param.max_item_per_flow = MAX_PKT_BURST; > + for (lc_id = 0; lc_id < nb_lcores; lc_id++) { > + gro_param.socket_id = rte_lcore_to_socket_id( > + fwd_lcores_cpuids[lc_id]); > + fwd_lcores[lc_id]->gro_ctx = rte_gro_ctx_create(&gro_param); The gro library .map file has wrong function name "rte_gro_ctrl_create" instead of "rte_gro_ctx_create". So this is giving a build error with shared library config. Both "rte_gro_ctrl_create" and "rte_gro_ctrl_destroy" need to be fixed. > + if (fwd_lcores[lc_id]->gro_ctx == NULL) { > + rte_exit(EXIT_FAILURE, > + "rte_gro_ctx_create() failed\n"); > + } > + } > } <...>