Skip to content

Latest commit

 

History

History
26 lines (22 loc) · 1.37 KB

async_job.md

File metadata and controls

26 lines (22 loc) · 1.37 KB

Using the OpenSSL* asynchronous mode 'ASYNC_JOB' infrastructure

Asynchronous operation utilizes the OpenSSL* asynchronous mode (ASYNC_JOB infrastructure) introduced in OpenSSL* version 1.1.0. In the OpenSSL* master branch this infrastructure was augmented to provide an additional callback method by which the OpenSSL* Engine can be notified of crypto operation request completions by the hardware accelerator. This additional method can be used if you think that using the alternative file descriptor method descriptor is too costly in terms of CPU cycles or in some context where a file descriptor is not appropriate.

The QAT OpenSSL* Engine build system will automatically detect whether the OpenSSL* version being built against supports this additional callback method. If so, the QAT OpenSSL* Engine code will use the callback mechanism for job completion rather than the file descriptor mechanism if a callback function has been set. If a callback has not been set then the file descriptor method will be used.

drawing

For further details on using the OpenSSL* asynchronous mode infrastructure please see the OpenSSL* online documentation located at: