From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from g9t5009.houston.hpe.com (g9t5009.houston.hpe.com [15.241.48.73]) by dpdk.org (Postfix) with ESMTP id D6E3A591F for ; Thu, 22 Sep 2016 22:46:45 +0200 (CEST) Received: from g9t2301.houston.hpecorp.net (g9t2301.houston.hpecorp.net [16.220.97.129]) by g9t5009.houston.hpe.com (Postfix) with ESMTP id 07CCC4C for ; Thu, 22 Sep 2016 20:46:44 +0000 (UTC) Received: from postal.labs.hpecorp.net (mailhub-pa.labs.hpecorp.net [16.111.35.25]) by g9t2301.houston.hpecorp.net (Postfix) with ESMTP id AEC6B50 for ; Thu, 22 Sep 2016 20:46:44 +0000 (UTC) Received: from bougret.labs.hpecorp.net (bougret.labs.hpecorp.net [16.111.8.16]) by postal.labs.hpecorp.net (8.14.4/8.14.4/HPL-PA Hub) with ESMTP id u8MKkb8j008845 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT) for ; Thu, 22 Sep 2016 13:46:43 -0700 Received: from jt by bougret.labs.hpecorp.net with local (Exim 4.84_2) (envelope-from ) id 1bnAtB-0000qI-5w for dev@dpdk.org; Thu, 22 Sep 2016 13:46:37 -0700 Date: Thu, 22 Sep 2016 13:46:37 -0700 From: Jean Tourrilhes To: dev@dpdk.org Message-ID: <20160922204637.GA3166@labs.hpe.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline Organisation: HP Labs Palo Alto Address: HP Labs, MS1184, 1501 Page Mill road, Palo Alto, CA 94304, USA. E-mail: jean.tourrilhes@hpe.com User-Agent: Mutt/1.5.23 (2014-03-12) Subject: [dpdk-dev] [Bug] Static constructors considered evil X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list Reply-To: jean.tourrilhes@hpe.com List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 22 Sep 2016 20:46:46 -0000 Hi, Expecting static constructors to match between the primary and the secondary is ill advised and putting yourself at the mercy of the linker magic. In this case, both primary and secondary were compiled using the same DPDK directory and exact same libdpdk.a. Config : ------ CONFIG_RTE_LIBRTE_HASH=y CONFIG_RTE_LIBRTE_LPM=y CONFIG_RTE_LIBRTE_ACL=y CONFIG_RTE_LIBRTE_DISTRIBUTOR=y CONFIG_RTE_LIBRTE_REORDER=y Primary : ------- EAL: Registered tailq: RTE_ACL EAL: Registered tailq: RTE_HASH EAL: Registered tailq: RTE_FBK_HASH EAL: Registered tailq: RTE_MEMPOOL EAL: Registered tailq: RTE_RING EAL: Registered tailq: VFIO_RESOURCE_LIST EAL: Registered tailq: UIO_RESOURCE_LIST Tailq 0: qname:, tqh_first:(nil), tqh_last:0x7feffffff41c Tailq 1: qname:, tqh_first:(nil), tqh_last:0x7feffffff44c Tailq 2: qname:, tqh_first:(nil), tqh_last:0x7feffffff47c Tailq 3: qname:, tqh_first:(nil), tqh_last:0x7feffffff4ac Tailq 4: qname:, tqh_first:(nil), tqh_last:0x7feffffff4dc Tailq 5: qname:, tqh_first:(nil), tqh_last:0x7feffffff50c Tailq 6: qname:, tqh_first:(nil), tqh_last:0x7feffffff53c Tailq 7: qname:<>, tqh_first:(nil), tqh_last:(nil) Tailq 8: qname:<>, tqh_first:(nil), tqh_last:(nil) Tailq 9: qname:<>, tqh_first:(nil), tqh_last:(nil) Secondary : --------- EAL: Registered tailq: RTE_LPM EAL: Registered tailq: RTE_LPM6 EAL: Registered tailq: RTE_HASH EAL: Registered tailq: RTE_FBK_HASH EAL: Registered tailq: RTE_ACL EAL: Registered tailq: RTE_REORDER EAL: Registered tailq: VFIO_RESOURCE_LIST EAL: Registered tailq: UIO_RESOURCE_LIST EAL: Registered tailq: RTE_DISTRIBUTOR EAL: Registered tailq: RTE_MEMPOOL EAL: Registered tailq: RTE_RING EAL: Cannot initialize tailq: RTE_LPM Tailq 0: qname:, tqh_first:(nil), tqh_last:0x7feffffff41c Tailq 1: qname:, tqh_first:0x7ff0004c62c0, tqh_last:0x7ff0004c62c0 Tailq 2: qname:, tqh_first:(nil), tqh_last:0x7feffffff47c Tailq 3: qname:, tqh_first:0x7ff0004a81c0, tqh_last:0x7ff0004a8040 Tailq 4: qname:, tqh_first:0x7ff0004a8140, tqh_last:0x7ff0004c6340 Tailq 5: qname:, tqh_first:0x7ff0005fee80, tqh_last:0x7ff00052be80 Tailq 6: qname:, tqh_first:(nil), tqh_last:0x7feffffff53c Tailq 7: qname:<>, tqh_first:(nil), tqh_last:(nil) Tailq 8: qname:<>, tqh_first:(nil), tqh_last:(nil) Tailq 9: qname:<>, tqh_first:(nil), tqh_last:(nil) [...] PANIC in rte_eal_init(): Cannot init tail queues for objects Obviously not happy... Any advices ? Jean