Hi Pavel, On Mon, 2023-08-21 at 19:21 +0200, Pavel Machek wrote: > Hi! > > > Because the IAA Compression Accelerator requires significant user > > setup in order to be used properly, this adds documentation on the > > iaa_crypto driver including setup, usage, and examples. > > > > Signed-off-by: Tom Zanussi <tom.zanussi@xxxxxxxxxxxxxxx> > > > > +accel-config > > +------------ > > + > > +Unlike typical drivers, the iaa_crypto driver does not enable the > > +device on driver load. Due to complexity and configurability of > > the > > +accelerator devices, it was a design decision to have the user > > +configure the device and manually enable the desired devices and > > +workqueues. > > Is the driver really so special? Is it widely used besides of zswap? > Could some kind of > simple default configuration good enough for zswap be provided? You're right, currently its main use is for zswap (though the original submission also supported zram). This idea of a simple default configuration makes sense and has come up before. I'll try to come up with a good way to accomplish that in the next revision. > > > +The userspace tool to help doing that is called accel-config. > > Using > > +accel-config to configure device or loading a previously saved > > config > > +is highly recommended. The device can be controlled via sysfs > > +directly but comes with the warning that do this ONLY if you know > > +exactly what you are doing. This document will not cover the > > sysfs > > +interface but assumes you will be using accel-config. > > Not covering the interface here is okay, but we really should have > description somewhere, > and there should be pointer to it here. OK, yeah, that also makes sense - I'll add something for that too. > > > +++ b/Documentation/driver-api/crypto/iaa/index.rst > > @@ -0,0 +1,20 @@ > > +.. SPDX-License-Identifier: GPL-2.0 > > + > > +================================= > > +IAA (Intel Analytics Accelerator) > > +================================= > > + > > +IAA provides hardware compression and decompression via the crypto > > +API. > > Why is it called "analytics accelerator" when its main function is > compression? > Well, the compression/decompression functions are only a part of what the hardware provides, so I guess the designers used 'analytics accelerator' as an umbrella term covering everything. >From the hardware documentation, the IAA hardware "provides very high throughput compression and decompression combined with analytics primitive functions. The analytic functions are commonly used for filtering data during analytic query processing. It primarily targets applications such as big-data and in-memory analytics databases, as well as application-transparent usages such as memory page compression." Hope that helps explain the naming.. Tom > Best regards, > > Pavel