From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by dpdk.org (Postfix) with ESMTP id 373546CB5 for ; Wed, 6 Jul 2016 13:39:10 +0200 (CEST) Received: from 1.general.paelzer.uk.vpn ([10.172.196.172] helo=localhost.localdomain) by youngberry.canonical.com with esmtpsa (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.76) (envelope-from ) id 1bKlAb-00089U-DP; Wed, 06 Jul 2016 11:39:09 +0000 From: Christian Ehrhardt To: Eric Kinzie , christian.ehrhardt@canonical.com, thomas.monjalon@6wind.com, dev@dpdk.org Date: Wed, 6 Jul 2016 13:39:05 +0200 Message-Id: <1467805145-24817-1-git-send-email-christian.ehrhardt@canonical.com> X-Mailer: git-send-email 2.7.4 Subject: [dpdk-dev] [PATCH] librte_pmd_bond: fix exported symbol versioning X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Jul 2016 11:39:10 -0000 The older versions of rte_eth_bond_8023ad_conf_get and rte_eth_bond_8023ad_setup were available in the old way since 2.0 - at least according to the map file. But versioning in the code was set to 16.04. That breaks compatibility checks for 2.0 on that library. For example with the dpdk abi checker: http://people.canonical.com/~paelzer/compat_report.html To fix, version the old symbols on the 2.0 version as they were initially added to the map file. See http://people.canonical.com/~paelzer/compat_report.html Fixes: dc40f17a ("net/bonding: allow external state machine in mode 4") Signed-off-by: Christian Ehrhardt --- drivers/net/bonding/rte_eth_bond_8023ad.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/net/bonding/rte_eth_bond_8023ad.c b/drivers/net/bonding/rte_eth_bond_8023ad.c index 48a50e4..2f7ae70 100644 --- a/drivers/net/bonding/rte_eth_bond_8023ad.c +++ b/drivers/net/bonding/rte_eth_bond_8023ad.c @@ -1068,7 +1068,7 @@ bond_mode_8023ad_conf_assign(struct mode8023ad_private *mode4, } static void -bond_mode_8023ad_setup_v1604(struct rte_eth_dev *dev, +bond_mode_8023ad_setup_v20(struct rte_eth_dev *dev, struct rte_eth_bond_8023ad_conf *conf) { struct rte_eth_bond_8023ad_conf def_conf; @@ -1214,7 +1214,7 @@ free_out: } int -rte_eth_bond_8023ad_conf_get_v1604(uint8_t port_id, +rte_eth_bond_8023ad_conf_get_v20(uint8_t port_id, struct rte_eth_bond_8023ad_conf *conf) { struct rte_eth_dev *bond_dev; @@ -1229,7 +1229,7 @@ rte_eth_bond_8023ad_conf_get_v1604(uint8_t port_id, bond_mode_8023ad_conf_get(bond_dev, conf); return 0; } -VERSION_SYMBOL(rte_eth_bond_8023ad_conf_get, _v1604, 16.04); +VERSION_SYMBOL(rte_eth_bond_8023ad_conf_get, _v20, 2.0); int rte_eth_bond_8023ad_conf_get_v1607(uint8_t port_id, @@ -1278,7 +1278,7 @@ bond_8023ad_setup_validate(uint8_t port_id, } int -rte_eth_bond_8023ad_setup_v1604(uint8_t port_id, +rte_eth_bond_8023ad_setup_v20(uint8_t port_id, struct rte_eth_bond_8023ad_conf *conf) { struct rte_eth_dev *bond_dev; @@ -1289,11 +1289,11 @@ rte_eth_bond_8023ad_setup_v1604(uint8_t port_id, return err; bond_dev = &rte_eth_devices[port_id]; - bond_mode_8023ad_setup_v1604(bond_dev, conf); + bond_mode_8023ad_setup_v20(bond_dev, conf); return 0; } -VERSION_SYMBOL(rte_eth_bond_8023ad_setup, _v1604, 16.04); +VERSION_SYMBOL(rte_eth_bond_8023ad_setup, _v20, 2.0); int rte_eth_bond_8023ad_setup_v1607(uint8_t port_id, -- 2.7.4