2023-12-08 22:13:47

by Tom Zanussi

[permalink] [raw]
Subject: Re: [PATCH v11 14/14] dmaengine: idxd: Add support for device/wq defaults

On Fri, 2023-12-08 at 12:12 -0800, Fenghua Yu wrote:
>
>
> On 12/1/23 12:10, Tom Zanussi wrote:
> > Add a load_device_defaults() function pointer to struct
> > idxd_driver_data, which if defined, will be called when an idxd
> > device
> > is probed and will allow the idxd device to be configured with
> > default
> > values.
> >
> > The load_device_defaults() function is passed an idxd device to
> > work
> > with to set specific device attributes.
> >
> > Also add a load_device_defaults() implementation IAA devices;
> > future
> > patches would add default functions for other device types such as
> > DSA.
> >
> > The way idxd device probing works, if the device configuration is
> > valid at that point e.g. at least one workqueue and engine is
> > properly
> > configured then the device will be enabled and ready to go.
> >
> > The IAA implementation, idxd_load_iaa_device_defaults(), configures
> > a
> > single workqueue (wq0) for each device with the following default
> > values:
> >
> >        mode                     "dedicated"
> >        threshold                0
> >        size             Total WQ Size from WQCAP
> >        priority         10
> >        type             IDXD_WQT_KERNEL
> >        group            0
> >        name              "iaa_crypto"
> >        driver_name       "crypto"
> >
> > Note that this now adds another configuration step for any users
> > that
> > want to configure their own devices/workqueus with something
> > different
> > in that they'll first need to disable (in the case of IAA) wq0 and
> > the
> > device itself before they can set their own attributes and re-
> > enable,
> > since they've been already been auto-enabled.  Note also that in
> > order
> > for the new configuration to be applied to the deflate-iaa crypto
> > algorithm the iaa_crypto module needs to unregister the old
> > version,
> > which is accomplished by removing the iaa_crypto module, and
> > re-registering it with the new configuration by reinserting the
> > iaa_crypto module.
> >
> > Signed-off-by: Tom Zanussi <[email protected]>
> > Reviewed-by: Dave Jiang <[email protected]>
>
> Reviewed-by: Fenghua Yu <[email protected]>
>

Thanks, Fenghua!

Tom

> Thanks.
>
> -Fenghua