Hey Suanming,
I haven't been actively involved in the development of DPDK in a number
of years but as far as I'm aware (and I don't believe this has changed
recently), out of order processing from the cryptodev API user
perspective is not supported, and for most scenarios I'm aware of (for
symmetric crypto processing) it would not be desired, as data path
protocols like IPsec or TLS expect packet order to be maintained.
I know the crypto scheduler PMD allows out of order processing of
operations on worker cores, when it is working in a load balancing mode,
but it's default behaviour is to guarantee that packets/operations are
returned in order to the user after processing.
If there are use cases for out of order processing (maybe for asymmetric
crypto) then I expected that at a minimum a per queue pair setup option
would be required and possibly a completion queue mechanism might be
required.
Regards
Declan
On 20/03/2023 09:28, Suanming Mou wrote:
Hi Declan,
While reading the cryptodev API and define docs, I don’t see some places
mention the out of order support.
Does current crypto enqueue and dequeue function support out of order
mode? Or should we add a hint capability flag for that?
Not sure if such topics have been discussed before, can you please help
to clarify?
Thanks,
Suanming Mou