On 2023-06-30 06:37, Jerin Jacob wrote:
On Fri, Jun 9, 2023 at 11:18 PM Mattias Rönnblom
<mattias.ronnb...@ericsson.com> wrote:
Eliminate non-burst enqueue operation from Eventdev.
The effect of this change is to reduce Eventdev code complexity
somewhat and slightly improve performance.
The single-event enqueue shortcut provided a very minor performance
advantage in some situations (e.g., with a compile time-constant burst
size of '1'), but would in other situations cause a noticeable
performance penalty (e.g., rte_event_enqueue_forward_burst() with run
time-variable burst sizes varying between '1' and larger burst sizes).
Signed-off-by: Mattias Rönnblom <mattias.ronnb...@ericsson.com>
-typedef uint16_t (*event_enqueue_t)(void *port, const struct rte_event *ev);
-/**< @internal Enqueue event on port of a device */
-
typedef uint16_t (*event_enqueue_burst_t)(void *port,
const struct rte_event ev[],
uint16_t nb_events);
@@ -45,8 +42,6 @@ typedef uint16_t (*event_crypto_adapter_enqueue_t)(void *port,
struct rte_event_fp_ops {
void **data;
/**< points to array of internal port data pointers */
- event_enqueue_t enqueue;
- /**< PMD enqueue function. */
Can we remove "dequeue" as well?
Seems likely, but I have no data on that option.
In any event, Please send a deprecation notice as it is an ABI change,
and we need to get merge the deprecation notice patch for v23.07.
I can review the deprecation notice patch quickly as soon as you send
it to make forward progress.
OK.
event_enqueue_burst_t enqueue_burst;
/**< PMD enqueue burst function. */
event_enqueue_burst_t enqueue_new_burst;
@@ -65,7 +60,7 @@ struct rte_event_fp_ops {
/**< PMD Tx adapter enqueue same destination function. */
event_crypto_adapter_enqueue_t ca_enqueue;
/**< PMD Crypto adapter enqueue function. */
- uintptr_t reserved[6];
+ uintptr_t reserved[7];
} __rte_cache_aligned;