]> git.droids-corp.org - dpdk.git/commitdiff
drivers/crypto: fix log type variables for -fno-common
authorLukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Wed, 15 Apr 2020 06:22:16 +0000 (08:22 +0200)
committerAkhil Goyal <akhil.goyal@nxp.com>
Sun, 19 Apr 2020 15:15:14 +0000 (17:15 +0200)
The four crypto drivers: kasumi, mvsam, snow3g and zuc define logtype
variables in their header file. As the header files are included
in more than one compilation unit, it might cause appearance
of multiple instances of the variable and a linker error.
Such situation can occur, when no common section is allowed
by the compiler settings and tentative definitions are placed
in BSS section.

Fixes: 2cba3814932e ("crypto/kasumi: add dynamic logging")
Fixes: a05a450f42fd ("crypto/mvsam: add dynamic logging")
Fixes: f3af5f9d1325 ("crypto/zuc: add dynamic logging")
Fixes: a3277ad47feb ("cryptodev: remove crypto device driver name")
Cc: stable@dpdk.org
Signed-off-by: Lukasz Wojciechowski <l.wojciechow@partner.samsung.com>
Acked-by: Pablo de Lara <pablo.de.lara.guarch@intel.com>
drivers/crypto/kasumi/kasumi_pmd_private.h
drivers/crypto/kasumi/rte_kasumi_pmd.c
drivers/crypto/mvsam/mrvl_pmd_private.h
drivers/crypto/mvsam/rte_mrvl_pmd.c
drivers/crypto/snow3g/rte_snow3g_pmd.c
drivers/crypto/snow3g/snow3g_pmd_private.h
drivers/crypto/zuc/rte_zuc_pmd.c
drivers/crypto/zuc/zuc_pmd_private.h

index 3b3a6958fd2dc1468b8ae59e60eb21c204ba83d5..b7f1c428b4e7e7db91b4341c24f1467376d28163 100644 (file)
@@ -11,7 +11,7 @@
 /**< KASUMI PMD device name */
 
 /** KASUMI PMD LOGTYPE DRIVER */
-int kasumi_logtype_driver;
+extern int kasumi_logtype_driver;
 
 #define KASUMI_LOG(level, fmt, ...)  \
        rte_log(RTE_LOG_ ## level, kasumi_logtype_driver,  \
index baad5b4e7781f1b485e17b2b38fc141602952a26..d67264842064d43eab13d400677f5a1a60a1607c 100644 (file)
@@ -17,6 +17,7 @@
 #define KASUMI_MAX_BURST 4
 #define BYTE_LEN 8
 
+int kasumi_logtype_driver;
 static uint8_t cryptodev_driver_id;
 
 /** Get xform chain order. */
index 09702b9e3eae9f393967d86794c9677b4b0f7cdf..e575330ef59be5ba84454a3d651cd149eaa3bcd7 100644 (file)
@@ -13,7 +13,7 @@
 /**< Marvell PMD device name */
 
 /** MRVL PMD LOGTYPE DRIVER */
-int mrvl_logtype_driver;
+extern int mrvl_logtype_driver;
 
 #define MRVL_LOG(level, fmt, ...) \
        rte_log(RTE_LOG_ ## level, mrvl_logtype_driver, \
index 3c0fe216f096d356059c0835190783438c791f7f..63782ce974df5f1ab5d968e402feeefe9baaf78c 100644 (file)
@@ -19,6 +19,7 @@
 #define MRVL_PMD_MAX_NB_SESS_ARG               ("max_nb_sessions")
 #define MRVL_PMD_DEFAULT_MAX_NB_SESSIONS       2048
 
+int mrvl_logtype_driver;
 static uint8_t cryptodev_driver_id;
 
 struct mrvl_pmd_init_params {
index d72112b5f4d015bebc92ff9d91c0f44e2b3ba041..8101eaaadacea490bfb414f745cebdd50ad007b3 100644 (file)
@@ -16,6 +16,7 @@
 #define SNOW3G_MAX_BURST 8
 #define BYTE_LEN 8
 
+int snow3g_logtype_driver;
 static uint8_t cryptodev_driver_id;
 
 /** Get xform chain order. */
index 2074f3d172c0cf18f26c9c7c43077dc74badb950..23cf078a9c0e485fe685f6fbf38b6e9afc9b1c16 100644 (file)
@@ -11,7 +11,7 @@
 /**< SNOW 3G PMD device name */
 
 /** SNOW 3G PMD LOGTYPE DRIVER */
-int snow3g_logtype_driver;
+extern int snow3g_logtype_driver;
 
 #define SNOW3G_LOG(level, fmt, ...)  \
        rte_log(RTE_LOG_ ## level, snow3g_logtype_driver,  \
index 9e06ab7c952688ff8ee8eceeddef07c5a139aa0f..f47a7880de6e69dab3e6996669a6b4fe054c2bfd 100644 (file)
@@ -14,6 +14,7 @@
 #define ZUC_MAX_BURST 16
 #define BYTE_LEN 8
 
+int zuc_logtype_driver;
 static uint8_t cryptodev_driver_id;
 
 /** Get xform chain order. */
index 47a8b08dd7e519648990d2927c180619788db526..d8684891eed4080dc7e85fb5330b97e150c26933 100644 (file)
@@ -8,10 +8,10 @@
 #include <intel-ipsec-mb.h>
 
 #define CRYPTODEV_NAME_ZUC_PMD         crypto_zuc
-/**< KASUMI PMD device name */
+/**< ZUC PMD device name */
 
 /** ZUC PMD LOGTYPE DRIVER */
-int zuc_logtype_driver;
+extern int zuc_logtype_driver;
 #define ZUC_LOG(level, fmt, ...)  \
        rte_log(RTE_LOG_ ## level, zuc_logtype_driver,  \
                        "%s()... line %u: " fmt "\n", __func__, __LINE__,  \