On Fri, 24 May 2019 at 11:21, Pascal Van Leeuwen <pvanleeuwen@xxxxxxxxxxxxxxxx> wrote: > > > > As I already mentioned in another thread somewhere, this morning in the > > > shower I realised that this may be useful if you have no expectation of > > > the length itself. But it's still a pretty specific use case which was > > > never considered for our hardware. And our HW doesn't seem to be alone in > > > this. > > > Does shaXXXsum or md5sum use the kernel crypto API though? > > > > The ones from libkcapi do (http://www.chronox.de/libkcapi.html) > > > > Christophe > > > I was not aware of that, so thanks for pointing that out. > Do they use the async calls (_aio) though? Because otherwise they shouldn't > end up being hardware accelerated anyway ... > All userland clients of the in-kernel crypto use it specifically to access h/w accelerators, given that software crypto doesn't require the higher privilege level (no point in issuing those AES CPU instructions from the kernel if you can issue them in your program directly) Basically, what is used is a socket interface that can block on read()/write(). So the userspace program doesn't need to be aware of the asynchronous nature, it is just frozen while the calls are being handled by the hardware.