cryptodev: fix pool element size for undefined operation
authorJunxiao Shi <git@mail1.yoursunny.com>
Tue, 9 Oct 2018 14:16:23 +0000 (10:16 -0400)
committerAkhil Goyal <akhil.goyal@nxp.com>
Wed, 17 Oct 2018 10:23:40 +0000 (12:23 +0200)
The documentation of rte_crypto_op_pool_create indicates that
specifying RTE_CRYPTO_OP_TYPE_UNDEFINED would create a pool that
supports all operation types. This change makes the code
consistent with documentation.

Fixes: c0f87eb5252b ("cryptodev: change burst API to be crypto op oriented")
Cc: stable@dpdk.org
Signed-off-by: Junxiao Shi <git@mail1.yoursunny.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
lib/librte_cryptodev/rte_cryptodev.c

index 63ae23f..608323f 100644 (file)
@@ -1477,6 +1477,9 @@ rte_crypto_op_pool_create(const char *name, enum rte_crypto_op_type type,
                elt_size += sizeof(struct rte_crypto_sym_op);
        } else if (type == RTE_CRYPTO_OP_TYPE_ASYMMETRIC) {
                elt_size += sizeof(struct rte_crypto_asym_op);
+       } else if (type == RTE_CRYPTO_OP_TYPE_UNDEFINED) {
+               elt_size += RTE_MAX(sizeof(struct rte_crypto_sym_op),
+                                   sizeof(struct rte_crypto_asym_op));
        } else {
                CDEV_LOG_ERR("Invalid op_type\n");
                return NULL;