From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id C20D9A00E6 for ; Mon, 2 Sep 2019 09:09:57 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C85271C2AD; Mon, 2 Sep 2019 09:09:55 +0200 (CEST) Received: from youngberry.canonical.com (youngberry.canonical.com [91.189.89.112]) by dpdk.org (Postfix) with ESMTP id 0FC3D1C243 for ; Mon, 2 Sep 2019 09:09:54 +0200 (CEST) Received: from mail-vk1-f198.google.com ([209.85.221.198]) by youngberry.canonical.com with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.76) (envelope-from ) id 1i4gTJ-0003oT-I5 for dev@dpdk.org; Mon, 02 Sep 2019 07:09:53 +0000 Received: by mail-vk1-f198.google.com with SMTP id j8so2348839vkn.16 for ; Mon, 02 Sep 2019 00:09:53 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=TbN6OGSJacLvasjFtsgg7zjLVDXlTSfM6S7Vgyy1heI=; b=ocWaDdhOX/jBSgf+kMyPw32Uuo9iOG3Cwr0rakwjYolBQ34N8Z6ZZR8nPCyg/wYQsO eDLfBBHXvxx+z4AiIVcPVkmFeQwsXCqqtgpBaxU2EwuJHM8tVJWNOZ0d6YHRXmklxs++ +6/thFkYvcmaxCjQgxOUvPOvEbgNADr85QJu2Mnj3Y0zcMA1N3KheN1JfiBAxrx6zgtZ Yh/FayPToaKEnBVRmBN4b3btnOLgfvU4K92hls/YZdToIxwVGnTnfz5BLFV9SAa67nJm C1x59VfUb1i9tcljyCtNnMFPtQOtPuhQOlnv3vurRpMxT0HTNx2MsUBGT0j5rzwQOXgZ rPUg== X-Gm-Message-State: APjAAAUb7QNFNnguSOX2gpktyrP4qWhh7AUlDl70M3LCMl7UJVyfDcTD GDAmkXV0/p3RhhEC1CFiyB3HvmdWTUgFVpanUX+BCJW7+SK/D3aLoHHnsrFqlZ57ALlHiguaqvf H0OVcM/JgCvvNmN2L0zw340BliwY7k5dLMOIg X-Received: by 2002:a67:ea1a:: with SMTP id g26mr15373414vso.192.1567408192713; Mon, 02 Sep 2019 00:09:52 -0700 (PDT) X-Google-Smtp-Source: APXvYqzg1DJDHGhkEGMcJKo/ebwMghY4dYPR4WKAfdixZ957g8PU1M1LQw9JPTzxCmTGckhJJHPwS/ctse7ajsfIH8U= X-Received: by 2002:a67:ea1a:: with SMTP id g26mr15373410vso.192.1567408192530; Mon, 02 Sep 2019 00:09:52 -0700 (PDT) MIME-Version: 1.0 References: <20190829153003.7974-1-christian.ehrhardt@canonical.com> <20190829153431.GA624@bricha3-MOBL.ger.corp.intel.com> In-Reply-To: From: Christian Ehrhardt Date: Mon, 2 Sep 2019 09:09:26 +0200 Message-ID: To: Luca Boccassi Cc: Bruce Richardson , dev , Kevin Laatz , Thomas Monjalon Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH v2] build: avoid --as-needed as it causes overlinking X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Aug 29, 2019 at 6:02 PM Luca Boccassi wrote: > > On Thu, 2019-08-29 at 16:34 +0100, Bruce Richardson wrote: > > On Thu, Aug 29, 2019 at 05:30:03PM +0200, Christian Ehrhardt wrote: > > > A while ago telemetry was added in 57ae0ec6 and it also added as- > > > needed > > > to config/meson.build. This seems no more needed these days as due > > > to other > > > build changes the ordering in buildlogs is: > > > [...] -lrte_telemetry [...] -Wl,--no-as-needed [...] > > > Which means telemetry no more benefits from --no-as-needed anyway. > > > > > > Overlinking problems get triggered by the meson generated pkgconfig > > > which > > > will have: > > > [...] -Wl,--no-as-needed > > > This will overlink and in addition anything that follows > > > as it also doesn't wrap back to --as-needed. So if a projects > > > includes > > > dpdk libs + it will also consider with --no-as- > > > needed. > > > > > > Fixes: > > > https://bugs.launchpad.net/ubuntu/+source/dpdk/+bug/1841759 > > > > > > > > > Signed-off-by: Christian Ehrhardt < > > > christian.ehrhardt@canonical.com > > > > > > > Acked-by: Luca Boccassi < > > > bluca@debian.org > > > > > > > --- > > > config/meson.build | 1 - > > > 1 file changed, 1 deletion(-) > > > > > > diff --git a/config/meson.build b/config/meson.build > > > index 2bafea530..a27f731f8 100644 > > > --- a/config/meson.build > > > +++ b/config/meson.build > > > @@ -94,7 +94,6 @@ dpdk_conf.set('RTE_TOOLCHAIN_' + > > > toolchain.to_upper(), 1) > > > dpdk_conf.set('RTE_ARCH_64', cc.sizeof('void *') == 8) > > > > > > add_project_link_arguments('-Wl,--no-as-needed', language: 'c') > > > -dpdk_extra_ldflags += '-Wl,--no-as-needed' > > > > > > > This seems strange to me. What is it about linking the dpdk apps that > > require the argument, but makes it safe for non-builtin apps to avoid > > having the arg? > > We've been wondering about that for a while :-) It also seems to be not > reproducible on Ubuntu 18.04/gcc 7.4. > > Can the verbose linking log be shared here, so that we can have a look > at where no-as-needed lands? Might provide some clue That would be the verbose linking log of the Travis CI run right? I currently have no idea which knob to turn to get this :-/ Having it accepted in upstream would make it more easy to fix this in the soon to be released Ubuntu 19.10. Is there a path to consider taking this fix as-is and continue the debug/discussion how the removal of the second line can even cause the symptoms that we have seen later? Or is everyone afraid that we then will not continue on it at all? > -- > Kind regards, > Luca Boccassi -- Christian Ehrhardt Software Engineer, Ubuntu Server Canonical Ltd