DPDK patches and discussions
 help / color / mirror / Atom feed
From: Tom Rix <trix@redhat.com>
To: Nicolas Chautru <nicolas.chautru@intel.com>,
	dev@dpdk.org, thomas@monjalon.net, gakhil@marvell.com,
	hemant.agrawal@nxp.com
Cc: maxime.coquelin@redhat.com, mdr@ashroe.eu,
	bruce.richardson@intel.com, david.marchand@redhat.com,
	stephen@networkplumber.org
Subject: Re: [PATCH v4 1/7] bbdev: allow operation type enum for growth
Date: Wed, 6 Jul 2022 05:50:04 -0700	[thread overview]
Message-ID: <af46b2c5-f82b-ab59-494a-b9c8005db265@redhat.com> (raw)
In-Reply-To: <1657067022-54373-2-git-send-email-nicolas.chautru@intel.com>


On 7/5/22 5:23 PM, Nicolas Chautru wrote:
> Updating the enum for rte_bbdev_op_type
> to allow to keep ABI compatible for enum insertion
> while adding padded maximum value for array need.
> Removing RTE_BBDEV_OP_TYPE_COUNT and instead exposing
> RTE_BBDEV_OP_TYPE_PADDED_MAX.
>
> Signed-off-by: Nicolas Chautru <nicolas.chautru@intel.com>
> ---
>   app/test-bbdev/test_bbdev.c      | 2 +-
>   app/test-bbdev/test_bbdev_perf.c | 4 ++--
>   examples/bbdev_app/main.c        | 2 +-
>   lib/bbdev/rte_bbdev.c            | 9 +++++----
>   lib/bbdev/rte_bbdev_op.h         | 2 +-
>   5 files changed, 10 insertions(+), 9 deletions(-)
>
> diff --git a/app/test-bbdev/test_bbdev.c b/app/test-bbdev/test_bbdev.c
> index ac06d73..1063f6e 100644
> --- a/app/test-bbdev/test_bbdev.c
> +++ b/app/test-bbdev/test_bbdev.c
> @@ -521,7 +521,7 @@ struct bbdev_testsuite_params {
>   	rte_mempool_free(mp);
>   
>   	TEST_ASSERT((mp = rte_bbdev_op_pool_create("Test_INV",
> -			RTE_BBDEV_OP_TYPE_COUNT, size, cache_size, 0)) == NULL,
> +			RTE_BBDEV_OP_TYPE_PADDED_MAX, size, cache_size, 0)) == NULL,
>   			"Failed test for rte_bbdev_op_pool_create: "
>   			"returned value is not NULL for invalid type");
>   
> diff --git a/app/test-bbdev/test_bbdev_perf.c b/app/test-bbdev/test_bbdev_perf.c
> index fad3b1e..1abda2d 100644
> --- a/app/test-bbdev/test_bbdev_perf.c
> +++ b/app/test-bbdev/test_bbdev_perf.c
> @@ -2428,13 +2428,13 @@ typedef int (test_case_function)(struct active_device *ad,
>   
>   	/* Find capabilities */
>   	const struct rte_bbdev_op_cap *cap = info.drv.capabilities;
> -	for (i = 0; i < RTE_BBDEV_OP_TYPE_COUNT; i++) {
> +	do {
>   		if (cap->type == test_vector.op_type) {
>   			capabilities = cap;
>   			break;
>   		}
>   		cap++;
> -	}
> +	} while (cap->type != RTE_BBDEV_OP_NONE);
>   	TEST_ASSERT_NOT_NULL(capabilities,
>   			"Couldn't find capabilities");
>   
> diff --git a/examples/bbdev_app/main.c b/examples/bbdev_app/main.c
> index fc7e8b8..ef0ba76 100644
> --- a/examples/bbdev_app/main.c
> +++ b/examples/bbdev_app/main.c
> @@ -1041,7 +1041,7 @@ uint16_t bbdev_parse_number(const char *mask)
>   	void *sigret;
>   	struct app_config_params app_params = def_app_config;
>   	struct rte_mempool *ethdev_mbuf_mempool, *bbdev_mbuf_mempool;
> -	struct rte_mempool *bbdev_op_pools[RTE_BBDEV_OP_TYPE_COUNT];
> +	struct rte_mempool *bbdev_op_pools[RTE_BBDEV_OP_TYPE_PADDED_MAX];
>   	struct lcore_conf lcore_conf[RTE_MAX_LCORE] = { {0} };
>   	struct lcore_statistics lcore_stats[RTE_MAX_LCORE] = { {0} };
>   	struct stats_lcore_params stats_lcore;
> diff --git a/lib/bbdev/rte_bbdev.c b/lib/bbdev/rte_bbdev.c
> index aaee7b7..22bd894 100644
> --- a/lib/bbdev/rte_bbdev.c
> +++ b/lib/bbdev/rte_bbdev.c
> @@ -23,6 +23,8 @@
>   
>   #define DEV_NAME "BBDEV"
>   
> +/* Number of supported operation types */
> +#define BBDEV_OP_TYPE_COUNT 5
>   
>   /* BBDev library logging ID */
>   RTE_LOG_REGISTER_DEFAULT(bbdev_logtype, NOTICE);
> @@ -890,10 +892,10 @@ struct rte_mempool *
>   		return NULL;
>   	}
>   
> -	if (type >= RTE_BBDEV_OP_TYPE_COUNT) {
> +	if (type >= BBDEV_OP_TYPE_COUNT) {
>   		rte_bbdev_log(ERR,
>   				"Invalid op type (%u), should be less than %u",
> -				type, RTE_BBDEV_OP_TYPE_COUNT);
> +				type, BBDEV_OP_TYPE_COUNT);
>   		return NULL;
>   	}
>   
> @@ -1122,10 +1124,9 @@ struct rte_mempool *
>   		"RTE_BBDEV_OP_TURBO_DEC",
>   		"RTE_BBDEV_OP_TURBO_ENC",
>   		"RTE_BBDEV_OP_LDPC_DEC",
> -		"RTE_BBDEV_OP_LDPC_ENC",
>   	};
>   
> -	if (op_type < RTE_BBDEV_OP_TYPE_COUNT)
> +	if (op_type < BBDEV_OP_TYPE_COUNT)
>   		return op_types[op_type];
>   
>   	rte_bbdev_log(ERR, "Invalid operation type");
> diff --git a/lib/bbdev/rte_bbdev_op.h b/lib/bbdev/rte_bbdev_op.h
> index 6d56133..cd82418 100644
> --- a/lib/bbdev/rte_bbdev_op.h
> +++ b/lib/bbdev/rte_bbdev_op.h
> @@ -748,7 +748,7 @@ enum rte_bbdev_op_type {
>   	RTE_BBDEV_OP_TURBO_ENC,  /**< Turbo encode */
>   	RTE_BBDEV_OP_LDPC_DEC,  /**< LDPC decode */
>   	RTE_BBDEV_OP_LDPC_ENC,  /**< LDPC encode */
> -	RTE_BBDEV_OP_TYPE_COUNT,  /**< Count of different op types */

Why not keep this enum so you don't have to make the BBDEV_OP_TYPE_COUNT 
#define ?

Tom

> +	RTE_BBDEV_OP_TYPE_PADDED_MAX = 8,  /**< Maximum op type number including padding */
>   };
>   
>   /** Bit indexes of possible errors reported through status field */


  reply	other threads:[~2022-07-06 12:50 UTC|newest]

Thread overview: 174+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-03-09  0:22 [PATCH v1 0/2] bbdev: add device info on queue topology Nicolas Chautru
2022-03-09  0:22 ` [PATCH v1 1/2] " Nicolas Chautru
2022-03-09  1:28   ` Stephen Hemminger
2022-03-09  0:22 ` [PATCH v1 2/2] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-06-17 18:37   ` [PATCH v2 0/5] bbdev changes for 22.11 Nicolas Chautru
2022-06-17 18:37     ` [PATCH v2 1/5] bbdev: allow operation type enum for growth Nicolas Chautru
2022-06-17 18:37     ` [PATCH v2 2/5] bbdev: add device status info Nicolas Chautru
2022-06-17 18:37     ` [PATCH v2 3/5] bbdev: add device info on queue topology Nicolas Chautru
2022-06-17 18:37     ` [PATCH v2 4/5] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-06-17 18:37     ` [PATCH v2 5/5] bbdev: add new operation for FFT processing Nicolas Chautru
2022-06-28  1:35       ` [PATCH v3 0/7] bbdev changes for 22.11 Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 2/7] bbdev: add device status info Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-06-28  1:35         ` [PATCH v3 7/7] bbdev: add a lock option for enqueue/dequeue operation Nicolas Chautru
2022-07-06  0:23       ` [PATCH v4 0/7] bbdev changes for 22.11 Nicolas Chautru
2022-07-06  0:23         ` [PATCH v4 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-07-06 12:50           ` Tom Rix [this message]
2022-07-06 21:20             ` Chautru, Nicolas
2022-07-06  0:23         ` [PATCH v4 2/7] bbdev: add device status info Nicolas Chautru
2022-07-06 15:38           ` Tom Rix
2022-07-06 21:16             ` Chautru, Nicolas
2022-07-07 13:37               ` Tom Rix
2022-07-07 17:15                 ` Chautru, Nicolas
2022-07-18 13:09                   ` Tom Rix
2022-08-25 14:08               ` Maxime Coquelin
2022-07-06  0:23         ` [PATCH v4 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-07-06 16:06           ` Tom Rix
2022-07-06 21:12             ` Chautru, Nicolas
2022-07-07 13:34               ` Tom Rix
2022-07-07 17:13                 ` Chautru, Nicolas
2022-07-18 13:04                   ` Tom Rix
2022-07-06  0:23         ` [PATCH v4 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-07-06 16:15           ` Tom Rix
2022-07-06 21:10             ` Chautru, Nicolas
2022-07-07 13:20               ` Tom Rix
2022-07-07 17:19                 ` Chautru, Nicolas
2022-07-18 13:21                   ` Tom Rix
2022-08-15 17:28                     ` Chautru, Nicolas
2022-07-06  0:23         ` [PATCH v4 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-07-06 18:47           ` Tom Rix
2022-07-06 21:04             ` Chautru, Nicolas
2022-07-07 13:09               ` Tom Rix
2022-07-07 16:57                 ` Chautru, Nicolas
2022-07-18 22:38                   ` Tom Rix
2022-07-06  0:23         ` [PATCH v4 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-07-06 18:57           ` Tom Rix
2022-07-06 20:34             ` Chautru, Nicolas
2022-07-06  0:23         ` [PATCH v4 7/7] bbdev: add a lock option for enqueue/dequeue operation Nicolas Chautru
2022-07-06 19:01           ` Tom Rix
2022-07-06 19:20             ` Stephen Hemminger
2022-07-06 20:21               ` Chautru, Nicolas
2022-07-07 12:47                 ` Tom Rix
2022-07-06 23:28       ` [PATCH v5 0/7] bbdev changes for 22.11 Nicolas Chautru
2022-07-06 23:28         ` [PATCH v5 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-08-25 13:54           ` Maxime Coquelin
2022-07-06 23:28         ` [PATCH v5 2/7] bbdev: add device status info Nicolas Chautru
2022-08-25 14:18           ` Maxime Coquelin
2022-08-25 18:30             ` Chautru, Nicolas
2022-08-26 10:12               ` Maxime Coquelin
2022-08-29 16:10                 ` Chautru, Nicolas
2022-08-30  7:08                   ` Maxime Coquelin
2022-08-30 19:38                     ` Chautru, Nicolas
2022-07-06 23:28         ` [PATCH v5 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-08-25 15:23           ` Maxime Coquelin
2022-07-06 23:28         ` [PATCH v5 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-07-06 23:28         ` [PATCH v5 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-07-06 23:28         ` [PATCH v5 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-07-06 23:28         ` [PATCH v5 7/7] bbdev: remove unnecessary if-check Nicolas Chautru
2022-08-15 17:54         ` [PATCH v5 0/7] bbdev changes for 22.11 Chautru, Nicolas
2022-08-25 18:24       ` [PATCH v6 " Nicolas Chautru
2022-08-25 18:24         ` [PATCH v6 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-08-25 18:24         ` [PATCH v6 2/7] bbdev: add device status info Nicolas Chautru
2022-08-25 18:24         ` [PATCH v6 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-08-25 18:24         ` [PATCH v6 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-08-26 11:53           ` Maxime Coquelin
2022-08-25 18:24         ` [PATCH v6 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-08-26 12:07           ` Maxime Coquelin
2022-08-29 18:18             ` Chautru, Nicolas
2022-08-25 18:24         ` [PATCH v6 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-08-26 19:51           ` Maxime Coquelin
2022-08-25 18:24         ` [PATCH v6 7/7] bbdev: remove unnecessary if-check Nicolas Chautru
2022-08-26 19:52           ` Maxime Coquelin
2022-08-29 18:07       ` [PATCH v7 0/7] bbdev changes for 22.11 Nicolas Chautru
2022-08-29 18:07         ` [PATCH v7 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-08-29 18:07         ` [PATCH v7 2/7] bbdev: add device status info Nicolas Chautru
2022-08-30  2:19           ` Zhang, Mingshan
2022-08-30  4:43           ` Hemant Agrawal
2022-09-21 18:54           ` [EXT] " Akhil Goyal
2022-09-21 20:53             ` Chautru, Nicolas
2022-08-29 18:07         ` [PATCH v7 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-08-29 18:07         ` [PATCH v7 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-08-30  4:44           ` Hemant Agrawal
2022-09-21 19:00           ` [EXT] " Akhil Goyal
2022-09-21 20:53             ` Chautru, Nicolas
2022-08-29 18:07         ` [PATCH v7 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-09-21 19:14           ` [EXT] " Akhil Goyal
2022-09-21 20:56             ` Chautru, Nicolas
2022-09-22 14:19               ` Akhil Goyal
2022-09-22 16:39                 ` Chautru, Nicolas
2022-09-22 16:48                   ` Akhil Goyal
2022-09-22 17:25                     ` Chautru, Nicolas
2022-08-29 18:07         ` [PATCH v7 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-09-21 19:21           ` [EXT] " Akhil Goyal
2022-09-21 20:57             ` Chautru, Nicolas
2022-09-23 10:57             ` Ferruh Yigit
     [not found]               ` <CO6PR18MB44848717BA4EA2FF8967D7CBD8509@CO6PR18MB4484.namprd18.prod.outlook.com>
2022-09-24 16:34                 ` Chautru, Nicolas
2022-09-27  9:43                   ` Ferruh Yigit
2022-09-27 20:59                   ` Chautru, Nicolas
2022-09-29 18:10                     ` Ferruh Yigit
2022-09-29 18:32                       ` Akhil Goyal
2022-09-29 19:48                         ` Chautru, Nicolas
2022-09-30  7:54                           ` Maxime Coquelin
2022-08-29 18:07         ` [PATCH v7 7/7] bbdev: remove unnecessary if-check Nicolas Chautru
2022-09-21 19:25           ` [EXT] " Akhil Goyal
2022-09-21 20:58             ` Chautru, Nicolas
2022-08-30  4:45         ` [PATCH v7 0/7] bbdev changes for 22.11 Hemant Agrawal
2022-09-06 16:47         ` Chautru, Nicolas
2022-09-21 21:02       ` [PATCH v8 " Nic Chautru
2022-09-21 21:02         ` [PATCH v8 1/7] bbdev: allow operation type enum for growth Nic Chautru
2022-09-21 21:02         ` [PATCH v8 2/7] bbdev: add device status info Nic Chautru
2022-09-21 21:02         ` [PATCH v8 3/7] bbdev: add device info on queue topology Nic Chautru
2022-09-21 21:02         ` [PATCH v8 4/7] drivers/baseband: update PMDs to expose queue per operation Nic Chautru
2022-09-21 21:02         ` [PATCH v8 5/7] bbdev: add new operation for FFT processing Nic Chautru
2022-09-21 21:02         ` [PATCH v8 6/7] bbdev: add queue related warning and status information Nic Chautru
2022-09-21 21:02         ` [PATCH v8 7/7] bbdev: remove unnecessary if-check Nic Chautru
2022-09-22 17:45       ` [PATCH v9 0/7] bbdev changes for 22.11 Nic Chautru
2022-09-22 17:45         ` [PATCH v9 1/7] bbdev: allow operation type enum for growth Nic Chautru
2022-09-22 17:45         ` [PATCH v9 2/7] bbdev: add device status info Nic Chautru
2022-09-22 17:45         ` [PATCH v9 3/7] bbdev: add device info on queue topology Nic Chautru
2022-09-22 17:45         ` [PATCH v9 4/7] drivers/baseband: update PMDs to expose queue per operation Nic Chautru
2022-09-22 17:45         ` [PATCH v9 5/7] bbdev: add new operation for FFT processing Nic Chautru
2022-09-22 17:45         ` [PATCH v9 6/7] bbdev: add queue related warning and status information Nic Chautru
2022-09-22 17:45         ` [PATCH v9 7/7] bbdev: remove unnecessary if-check Nic Chautru
2022-09-22 18:17         ` [EXT] [PATCH v9 0/7] bbdev changes for 22.11 Akhil Goyal
2022-09-22 20:59           ` Chautru, Nicolas
2022-09-30 18:45       ` [PATCH v10 " Nicolas Chautru
2022-09-30 18:45         ` [PATCH v10 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-09-30 18:46         ` [PATCH v10 2/7] bbdev: add device status info Nicolas Chautru
2022-09-30 18:46         ` [PATCH v10 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-09-30 18:46         ` [PATCH v10 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-09-30 18:46         ` [PATCH v10 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-09-30 18:46         ` [PATCH v10 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-10-03  8:28           ` Thomas Monjalon
2022-10-03 16:39             ` Chautru, Nicolas
2022-10-03 17:21               ` Thomas Monjalon
2022-09-30 18:46         ` [PATCH v10 7/7] bbdev: remove unnecessary if-check Nicolas Chautru
2022-09-30 20:38         ` [EXT] [PATCH v10 0/7] bbdev changes for 22.11 Akhil Goyal
2022-10-03 18:00       ` [PATCH v11 " Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 2/7] bbdev: add device status info Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-10-03 18:00         ` [PATCH v11 7/7] bbdev: remove unnecessary if-check Nicolas Chautru
2022-10-04 17:16       ` [PATCH v12 0/7] bbdev changes for 22.11 Nicolas Chautru
2022-10-04 17:16         ` [PATCH v12 1/7] bbdev: allow operation type enum for growth Nicolas Chautru
2022-10-04 17:16         ` [PATCH v12 2/7] bbdev: add device status info Nicolas Chautru
2022-10-05  7:16           ` Maxime Coquelin
2022-10-04 17:16         ` [PATCH v12 3/7] bbdev: add device info on queue topology Nicolas Chautru
2022-10-04 17:16         ` [PATCH v12 4/7] drivers/baseband: update PMDs to expose queue per operation Nicolas Chautru
2022-10-04 17:16         ` [PATCH v12 5/7] bbdev: add new operation for FFT processing Nicolas Chautru
2022-10-04 17:16         ` [PATCH v12 6/7] bbdev: add queue related warning and status information Nicolas Chautru
2022-10-04 17:16         ` [PATCH v12 7/7] bbdev: remove unnecessary if-check Nicolas Chautru
2022-10-06 17:31         ` [EXT] [PATCH v12 0/7] bbdev changes for 22.11 Akhil Goyal
2022-10-06 22:28           ` Chautru, Nicolas
2022-10-07  4:46             ` Akhil Goyal
2022-10-10  7:35           ` Thomas Monjalon
2022-10-10 17:07             ` Chautru, Nicolas
2022-06-06 16:15 ` [PATCH v1 0/2] bbdev: add device info on queue topology Chautru, Nicolas

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=af46b2c5-f82b-ab59-494a-b9c8005db265@redhat.com \
    --to=trix@redhat.com \
    --cc=bruce.richardson@intel.com \
    --cc=david.marchand@redhat.com \
    --cc=dev@dpdk.org \
    --cc=gakhil@marvell.com \
    --cc=hemant.agrawal@nxp.com \
    --cc=maxime.coquelin@redhat.com \
    --cc=mdr@ashroe.eu \
    --cc=nicolas.chautru@intel.com \
    --cc=stephen@networkplumber.org \
    --cc=thomas@monjalon.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).