From d94e6a00edc22a1dd4946b3603aebb29319ce5ce Mon Sep 17 00:00:00 2001 From: imarom Date: Sun, 25 Sep 2016 14:58:51 +0300 Subject: split multicore - all tests pass --- src/rpc-server/commands/trex_rpc_cmd_stream.cpp | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-) (limited to 'src/rpc-server/commands') diff --git a/src/rpc-server/commands/trex_rpc_cmd_stream.cpp b/src/rpc-server/commands/trex_rpc_cmd_stream.cpp index becd51c5..3afa2457 100644 --- a/src/rpc-server/commands/trex_rpc_cmd_stream.cpp +++ b/src/rpc-server/commands/trex_rpc_cmd_stream.cpp @@ -241,14 +241,21 @@ TrexRpcCmdAddStream::parse_vm_instr_tuple_flow_var(const Json::Value &inst, std: uint32_t limit_flows = parse_uint32(inst, "limit_flows", result); uint16_t flags = parse_uint16(inst, "flags", result); + /* archiecture limitation - limit_flows must be greater or equal to DP core count */ + if (limit_flows < get_stateless_obj()->get_dp_core_count()) { + std::stringstream ss; + ss << "cannot limit flows to less than " << (uint32_t)get_stateless_obj()->get_dp_core_count(); + generate_execute_err(result, ss.str()); + } + stream->m_vm.add_instruction(new StreamVmInstructionFlowClient(flow_var_name, - ip_min, - ip_max, - port_min, - port_max, - limit_flows, - flags - )); + ip_min, + ip_max, + port_min, + port_max, + limit_flows, + flags + )); } -- cgit 1.2.3-korg