[Accel-config] Re: [PATCH v1 03/11] accel-config: Add lib functions to list mdevs and retrieve mdev properties
Jiang, Dave <dave.jiang at intel.com>
| Newsgroups | dev.linux.lists.accel-config |
|---|---|
| Message-ID | <[email protected]> |
> -----Original Message-----
> From: ramesh.thomas(a)intel.com <ramesh.thomas(a)intel.com>
> Sent: Wednesday, December 2, 2020 12:31 PM
> To: accel-config(a)lists.01.org
> Cc: Thomas, Ramesh <ramesh.thomas(a)intel.com>; Luck, Tony
> <tony.luck(a)intel.com>; Jiang, Dave <dave.jiang(a)intel.com>
> Subject: [PATCH v1 03/11] accel-config: Add lib functions to list mdevs and
> retrieve mdev properties
>
> From: Ramesh Thomas <ramesh.thomas(a)intel.com>
>
> Create library functions for querrying mdev details
> - Functions to retrieve first and next mdev in list
> - Macro to iterate mdev list
> - Functions to retrieve mdev uuid and type
>
> Signed-off-by: Ramesh Thomas <ramesh.thomas(a)intel.com>
> ---
> accfg/lib/libaccel-config.sym | 9 +++++++++
> accfg/lib/libaccfg.c | 22 ++++++++++++++++++++++
> accfg/libaccel_config.h | 11 +++++++++++
> 3 files changed, 42 insertions(+)
>
> diff --git a/accfg/lib/libaccel-config.sym b/accfg/lib/libaccel-config.sym index
> 471e06a..a857152 100644
> --- a/accfg/lib/libaccel-config.sym
> +++ b/accfg/lib/libaccel-config.sym
> @@ -133,3 +133,12 @@ global:
> accfg_wq_set_max_batch_size;
> accfg_wq_set_max_transfer_size;
> } LIBACCFG_6;
> +
> +LIBACCFG_8 {
> +global:
> + accfg_device_first_mdev;
> + accfg_device_next_mdev;
> + accfg_mdev_get_uuid;
> + accfg_mdev_get_type;
> + accfg_mdev_basenames;
> +} LIBACCFG_7;
> diff --git a/accfg/lib/libaccfg.c b/accfg/lib/libaccfg.c index 0dd1f0c..6a4648a
> 100644
> --- a/accfg/lib/libaccfg.c
> +++ b/accfg/lib/libaccfg.c
> @@ -956,6 +956,28 @@ static void engines_init(struct accfg_device *device)
> add_engine);
> }
>
> +ACCFG_EXPORT struct accfg_device_mdev
> *accfg_device_first_mdev(struct
> +accfg_device *device) {
Can you line up the function like:
ACCFG_EXPORT struct accfg_device_mdev *accfg_device_first_mdev(struct accfg_device *device)
{
This is for the entire series. Otherwise looks ok.
- Dave.
> + return list_top(&device->mdev_list, struct accfg_device_mdev, list);
> }
> +
> +ACCFG_EXPORT struct accfg_device_mdev
> *accfg_device_next_mdev(struct
> +accfg_device_mdev *mdev) {
> + struct accfg_device *device = mdev->device;
> +
> + return list_next(&device->mdev_list, mdev, list); }
> +
> +ACCFG_EXPORT void accfg_mdev_get_uuid(struct accfg_device_mdev
> *mdev,
> +uuid_t uuid) {
> + uuid_copy(uuid, mdev->uuid);
> +}
> +
> +ACCFG_EXPORT enum accfg_mdev_type accfg_mdev_get_type(struct
> +accfg_device_mdev *mdev) {
> + return mdev->type;
> +}
> +
> /**
> * accfg_device_get_first - retrieve first device in the system
> * @ctx: context established by accfg_new diff --git a/accfg/libaccel_config.h
> b/accfg/libaccel_config.h index e89bd40..a55bfde 100644
> --- a/accfg/libaccel_config.h
> +++ b/accfg/libaccel_config.h
> @@ -184,6 +184,17 @@ int accfg_device_is_active(struct accfg_device
> *device); int accfg_device_get_cmd_status(struct accfg_device *device);
> const char * accfg_device_get_cmd_status_str(struct accfg_device *device);
>
> +struct accfg_device_mdev;
> +struct accfg_device_mdev *accfg_device_first_mdev(struct accfg_device
> +*device); struct accfg_device_mdev *accfg_device_next_mdev(struct
> +accfg_device_mdev *mdev); void accfg_mdev_get_uuid(struct
> +accfg_device_mdev *mdev, uuid_t uuid); enum accfg_mdev_type
> +accfg_mdev_get_type(struct accfg_device_mdev *mdev);
> +
> +#define accfg_device_mdev_foreach(device, mdev) \
> + for (mdev = accfg_device_first_mdev(device); \
> + mdev != NULL; \
> + mdev = accfg_device_next_mdev(mdev))
> +
> /* libaccfg function for group */
> struct accfg_group;
> struct accfg_group *accfg_group_get_first(struct accfg_device *device);
> --
> 2.26.2