[v1,3/5] eventdev/crypto: wrong offset used while flushing events
Checks
Commit Message
Events enqueued to eventdev from the beginning of the circular buffer.
This leads to invalid or already freed events getting enqueued to
circular buffer.
Fixed by enqueuing the events from the head pointer of circular buffer.
Signed-off-by: Ganapati Kundapura <ganapati.kundapura@intel.com>
@@ -669,7 +669,7 @@ eca_circular_buffer_flush_to_evdev(struct event_crypto_adapter *adapter,
else
return 0; /* buffer empty */
- nb_ops_flushed = eca_ops_enqueue_burst(adapter, ops, n);
+ nb_ops_flushed = eca_ops_enqueue_burst(adapter, &ops[*headp], n);
bufp->count -= nb_ops_flushed;
if (!bufp->count) {
*headp = 0;