| 496 | } |
| 497 | |
| 498 | static void |
| 499 | mlx5_ipool_free_cache(struct mlx5_indexed_pool *pool, uint32_t idx) |
| 500 | { |
| 501 | int cidx; |
| 502 | |
| 503 | cidx = rte_lcore_index(rte_lcore_id()); |
| 504 | if (unlikely(cidx == -1)) { |
| 505 | cidx = RTE_MAX_LCORE; |
| 506 | rte_spinlock_lock(&pool->lcore_lock); |
| 507 | } |
| 508 | _mlx5_ipool_free_cache(pool, cidx, idx); |
| 509 | if (unlikely(cidx == RTE_MAX_LCORE)) |
| 510 | rte_spinlock_unlock(&pool->lcore_lock); |
| 511 | } |
| 512 | |
| 513 | void * |
| 514 | mlx5_ipool_malloc(struct mlx5_indexed_pool *pool, uint32_t *idx) |
no test coverage detected