On Mon, Oct 11, 2010 at 7:54 PM, Phil Sutter <p...@nwl.cc> wrote:
>> > This time insertion and collection of asynchronous jobs is implemented
>> > via ioctl calls.
>> Thanks it looks nice.
> But it's all kippers and curtains. When testing an async-able speed.c on
> a multiprocessor system, interactivity went to zero. It seems like all
> these workqueue items do a really nice job at keeping the system busy
> enough to even ignore key presses most of the time.

The way I countered this problem in a similar driver, I used an independent
workqueue for the driver instead of scheduling on the global one.

> Another thing I realised as recently as when looking at the above
> problem is the internal workflow: asynchronous cryptoapi symbols, being
> called and waited upon from a single function in cryptodev (thereby
> making them synchronous), which are then used by my asynchronous
> userspace interface on top of everything. If that wasn't my own work,
> I'd call that the probably worst attempt possible.

You built on the high level API of the driver. This is not that bad given
the diversity of the linux-crypto internal API. A high level asynchronous
API might be optimal, but the current implementation is fine as a start.

regards,
Nikos

_______________________________________________
Cryptodev-linux-devel mailing list
Cryptodev-linux-devel@gna.org
https://mail.gna.org/listinfo/cryptodev-linux-devel

Reply via email to