net/mlx5: wrap adjust flow priority per OS
mlx5_flow_adjust_priority() is used to adjust priorities according to priorities levels. It is Verbs based and it is called from shared code (mlx5_flow_dv.c). Therefore, wrap it in an OS API. Signed-off-by: Ophir Munk <ophirmu@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
This commit is contained in:
parent
e7252614cd
commit
c604d92af7
@ -365,4 +365,24 @@ mlx5_flow_os_destroy_flow_action(void *action)
|
||||
return mlx5_glue->destroy_flow_action(action);
|
||||
}
|
||||
|
||||
/**
|
||||
* OS wrapper over Verbs API.
|
||||
* Adjust flow priority based on the highest layer and the request priority.
|
||||
*
|
||||
* @param[in] dev
|
||||
* Pointer to the Ethernet device structure.
|
||||
* @param[in] priority
|
||||
* The rule base priority.
|
||||
* @param[in] subpriority
|
||||
* The priority based on the items.
|
||||
*
|
||||
* @return
|
||||
* The new priority.
|
||||
*/
|
||||
static inline uint32_t
|
||||
mlx5_os_flow_adjust_priority(struct rte_eth_dev *dev, int32_t priority,
|
||||
uint32_t subpriority)
|
||||
{
|
||||
return mlx5_flow_adjust_priority(dev, priority, subpriority);
|
||||
}
|
||||
#endif /* RTE_PMD_MLX5_FLOW_OS_H_ */
|
||||
|
@ -10567,8 +10567,9 @@ flow_dv_translate(struct rte_eth_dev *dev,
|
||||
/* Register matcher. */
|
||||
matcher.crc = rte_raw_cksum((const void *)matcher.mask.buf,
|
||||
matcher.mask.size);
|
||||
matcher.priority = mlx5_flow_adjust_priority(dev, priority,
|
||||
matcher.priority);
|
||||
matcher.priority = mlx5_os_flow_adjust_priority(dev,
|
||||
priority,
|
||||
matcher.priority);
|
||||
/* reserved field no needs to be set to 0 here. */
|
||||
tbl_key.domain = attr->transfer;
|
||||
tbl_key.direction = attr->egress;
|
||||
|
Loading…
Reference in New Issue
Block a user