From mboxrd@z Thu Jan 1 00:00:00 1970 X-GM-THRID: 7121740689689280512 X-Received: by 2002:a05:6000:156a:b0:21d:b22b:e5b with SMTP id 10-20020a056000156a00b0021db22b0e5bmr34345772wrz.348.1658411111223; Thu, 21 Jul 2022 06:45:11 -0700 (PDT) X-BeenThere: isar-users@googlegroups.com Received: by 2002:a5d:6f03:0:b0:21d:9636:a730 with SMTP id ay3-20020a5d6f03000000b0021d9636a730ls2001728wrb.0.-pod-prod-gmail; Thu, 21 Jul 2022 06:45:10 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sOlgbVSF01icFxUwspCI6IBFwAmyhnJenMobEQfo67xx4nILSSsba0MfZbZElPPEGP+/lY X-Received: by 2002:adf:a51a:0:b0:21d:86b9:f41e with SMTP id i26-20020adfa51a000000b0021d86b9f41emr34872393wrb.217.1658411110289; Thu, 21 Jul 2022 06:45:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1658411110; cv=none; d=google.com; s=arc-20160816; b=j3pN/iGWzcqKFpEDxqFRva90Ec4QF1z84W5Gtbq514M8rN4p+SNGieKdnYN8hccMW0 pwkwKvdw5SrjMEIwX8uEMZ+ettt199ZyXaznYj3Zi5LUC7ap7EJBN8v9vvstck23zFOp w7GI3xRuwxy5RCOOyaJw+mQvdv5xXwnjENhTF1mkF/dSh8dLIfpSddIACKjrLQut1YS3 hSOh00xW66v5h6/acmurq9NLHWzTPPEetHNMC12BsHwPar7rsMSNujR70RI0eedLI9sR zPUS20eNqnIyS6Q5a5Kobek6z4lXLGV4N5QWz0Cz/BSZ7t/+a6CetgvkP3mZMQ26kyxF sVCg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=feedback-id:content-transfer-encoding:mime-version:message-id:date :subject:cc:to:from:dkim-signature; bh=nBnDJwQPkQvY0fXxJuTk5woh+/QqdPm2b59p9CKHZxM=; b=PbUHD/RczLv+TD5WJyrmo6d7dkLpn3A0DCLD66R1dVI/BUAzdQUWXX0mZbALw/jVjk QzXFYQLVcGph5ywZmbHd94KuvDXUDy4frMRu3OKlJvZuHZPX/WU2zo8Pk1RRpPGXViSK Nxqeyz/pRvc3JbZMXrPT04D/9rMB4uNp1z9CrwQ5m+OMVQl0MAr6Kl/FCer0hM/UWswF MJL8by/Jaq4qe6dz3OzSb98PWq87t3WTsHTW2EaMwzooD1il3pQEHLVv9TXYYSSc+FK8 nKILuCASdG3EF4VF8fZ5MEJQI2z37UHJ5wT4TonqsR9zlCTWuZRiMFXRV30JDQe0j8p1 0bAQ== ARC-Authentication-Results: i=1; gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TS692ag0; spf=pass (google.com: domain of fm-72506-20220721134509a3d9d436fe91fde120-3bltit@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-72506-20220721134509a3d9d436fe91fde120-3BLtit@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Return-Path: Received: from mta-64-227.siemens.flowmailer.net (mta-64-227.siemens.flowmailer.net. [185.136.64.227]) by gmr-mx.google.com with ESMTPS id az1-20020adfe181000000b0021d91e1ca87si51658wrb.1.2022.07.21.06.45.10 for (version=TLS1_2 cipher=ECDHE-ECDSA-AES128-GCM-SHA256 bits=128/128); Thu, 21 Jul 2022 06:45:10 -0700 (PDT) Received-SPF: pass (google.com: domain of fm-72506-20220721134509a3d9d436fe91fde120-3bltit@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) client-ip=185.136.64.227; Authentication-Results: gmr-mx.google.com; dkim=pass header.i=@siemens.com header.s=fm2 header.b=TS692ag0; spf=pass (google.com: domain of fm-72506-20220721134509a3d9d436fe91fde120-3bltit@rts-flowmailer.siemens.com designates 185.136.64.227 as permitted sender) smtp.mailfrom=fm-72506-20220721134509a3d9d436fe91fde120-3BLtit@rts-flowmailer.siemens.com; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=siemens.com Received: by mta-64-227.siemens.flowmailer.net with ESMTPSA id 20220721134509a3d9d436fe91fde120 for ; Thu, 21 Jul 2022 15:45:09 +0200 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; s=fm2; d=siemens.com; i=felix.moessbauer@siemens.com; h=Date:From:Subject:To:Message-ID:MIME-Version:Content-Type:Content-Transfer-Encoding:Cc; bh=nBnDJwQPkQvY0fXxJuTk5woh+/QqdPm2b59p9CKHZxM=; b=TS692ag0KomrBhOG76KejuGIh6Ripjm6m44gKDqXh75+UgmyFa+WWSrV9pO6tFZuwBIWA3 eJ0c1IsEDAFJzHLMqGnxgZ2KpNasKAK1wYbwWvBaJcZsEjWZlTPGY3lJUyobebH82jU1UAM6 O5R0n7Bjy94W1CQwl/ET/VklWF+0Y=; From: Felix Moessbauer To: isar-users@googlegroups.com Cc: amikan@ilbers.de, Felix Moessbauer Subject: [PATCH v2] make debug symbols of kernel build relocatable Date: Thu, 21 Jul 2022 15:45:01 +0200 Message-Id: <20220721134501.780010-1-felix.moessbauer@siemens.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Flowmailer-Platform: Siemens Feedback-ID: 519:519-72506:519-21489:flowmailer X-TUID: HE9lkOvzVWbf This patch adds support to inject custom KCFLAGS into the linux-custom kernel build. Using this infrastructure, we add the debug-prefix-map flag to strip off the absolute prefix of the sources location. This makes the debug information relocatable. By that, we also fix low ccache hit rates in combination with ssbuild due to the random builddir that sbuild uses. Signed-off-by: Felix Moessbauer --- meta/recipes-kernel/linux/files/debian/isar/build.tmpl | 2 +- meta/recipes-kernel/linux/files/debian/rules.tmpl | 3 ++- meta/recipes-kernel/linux/linux-custom.inc | 4 ++++ 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/meta/recipes-kernel/linux/files/debian/isar/build.tmpl b/meta/recipes-kernel/linux/files/debian/isar/build.tmpl index 65261e41..94cfbe0e 100644 --- a/meta/recipes-kernel/linux/files/debian/isar/build.tmpl +++ b/meta/recipes-kernel/linux/files/debian/isar/build.tmpl @@ -22,7 +22,7 @@ do_build() { sed -i "s/@KR@/${KR}/g" ${S}/debian/control ${S}/debian/linux-image-${KERNEL_NAME_PROVIDED}.* # Build the Linux kernel - ${MAKE} O=${KERNEL_BUILD_DIR} ${PARALLEL_MAKE} + ${MAKE} O=${KERNEL_BUILD_DIR} ${PARALLEL_MAKE} KCFLAGS="${KCFLAGS}" # Stop tracing set +x diff --git a/meta/recipes-kernel/linux/files/debian/rules.tmpl b/meta/recipes-kernel/linux/files/debian/rules.tmpl index a1166287..8063c495 100755 --- a/meta/recipes-kernel/linux/files/debian/rules.tmpl +++ b/meta/recipes-kernel/linux/files/debian/rules.tmpl @@ -13,7 +13,8 @@ isar_env=$(strip \ export DEB_HOST_GNU_TYPE='$(DEB_HOST_GNU_TYPE)' && \ export MAKE='$(MAKE)' && \ export O='${O}' && \ - export S='${S}' \ + export S='${S}' && \ + export CURDIR='$(CURDIR)' \ ) %: diff --git a/meta/recipes-kernel/linux/linux-custom.inc b/meta/recipes-kernel/linux/linux-custom.inc index a6b1cdab..55bf0418 100644 --- a/meta/recipes-kernel/linux/linux-custom.inc +++ b/meta/recipes-kernel/linux/linux-custom.inc @@ -78,11 +78,15 @@ TEMPLATE_VARS += " \ LINUX_VERSION_EXTENSION \ KERNEL_NAME_PROVIDED \ KERNEL_CONFIG_FRAGMENTS \ + KCFLAGS \ " inherit dpkg inherit template +# Add custom cflags to the kernel build +KCFLAGS ?= "-fdebug-prefix-map=${CURDIR}=." + # Derive name of the kernel packages from the name of this recipe KERNEL_NAME_PROVIDED ?= "${@ d.getVar('PN', True).partition('linux-')[2]}" -- 2.30.2