2 // Copyright (c) 2017 Intel Corporation
4 // Licensed under the Apache License, Version 2.0 (the "License");
5 // you may not use this file except in compliance with the License.
6 // You may obtain a copy of the License at
8 // http://www.apache.org/licenses/LICENSE-2.0
10 // Unless required by applicable law or agreed to in writing, software
11 // distributed under the License is distributed on an "AS IS" BASIS,
12 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 // See the License for the specific language governing permissions and
14 // limitations under the License.
20 static inline struct rte_ring *
21 app_thread_msgq_in_get(struct app_params *app,
22 uint32_t socket_id, uint32_t core_id, uint32_t ht_id)
27 snprintf(msgq_name, sizeof(msgq_name),
28 "MSGQ-REQ-CORE-s%" PRIu32 "c%" PRIu32 "%s",
32 param_idx = APP_PARAM_FIND(app->msgq_params, msgq_name);
37 return app->msgq[param_idx];
40 static inline struct rte_ring *
41 app_thread_msgq_out_get(struct app_params *app,
42 uint32_t socket_id, uint32_t core_id, uint32_t ht_id)
47 snprintf(msgq_name, sizeof(msgq_name),
48 "MSGQ-RSP-CORE-s%" PRIu32 "c%" PRIu32 "%s",
52 param_idx = APP_PARAM_FIND(app->msgq_params, msgq_name);
57 return app->msgq[param_idx];
62 app_pipeline_thread_cmd_push(struct app_params *app);
65 app_pipeline_enable(struct app_params *app,
69 uint32_t pipeline_id);
72 app_pipeline_disable(struct app_params *app,
76 uint32_t pipeline_id);
79 app_thread_headroom(struct app_params *app,
82 uint32_t hyper_th_id);
84 #endif /* THREAD_FE_H_ */