[PATCH] linux install.tmpl: added CONFIG_HAVE_OBJTOOL in OR for objtool

6 views
Skip to first unread message

roberto....@gmail.com

unread,
Nov 4, 2022, 3:09:58 PM11/4/22
to isar-...@googlegroups.com, roberto....@gmail.com
From: "Roberto A. Foglietta" <roberto....@gmail.com>

linux install.tmpl: added OR with CONFIG_HAVE_OBJTOOL for objtools
a fix for newer kernels (since 5.19 for sure) to include objtool

The newer kernels (e.g. v5.19) when compiled and packaged by an ISAR
do not include the objectool anymore in linux headears package. This
obviously breaks any activity which expects to use that binary
executable.

Signed-off-by: Roberto A. Foglietta <roberto....@gmail.com>
---
meta/recipes-kernel/linux/files/debian/isar/install.tmpl | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
index 0a8645d..8a604e4 100644
--- a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
+++ b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
@@ -177,7 +177,7 @@ kernel_headers() {
echo Module.symvers >> ${obj_hdr_files}
fi
(cd ${O}; find arch/${ARCH}/include include scripts -type f) >>${obj_hdr_files}
- if [ -n "${CONFIG_STACK_VALIDATION}" ]; then
+ if [ -n "${CONFIG_STACK_VALIDATION}" -o -n "${CONFIG_HAVE_OBJTOOL}" ]; then
(cd ${O}; find tools/objtool -type f -executable) >>${obj_hdr_files}
fi
if [ -n "${CONFIG_GCC_PLUGINS}" ]; then
--
2.34.1


https://16F0H.trk.elasticemail.com/tracking/unsubscribe?d=3jOzVG-V7m823VowZK7kvyjupKAxfR93A20ZBH27Tw2snM98VqVKUFuqqGN2zXKMtBn7lbq9vFJQ6Vm-MMVZSyJce7XP2cfOqAamSlAD5LtJ0

Henning Schild

unread,
Nov 7, 2022, 3:02:46 AM11/7/22
to roberto....@gmail.com, isar-...@googlegroups.com
Am Thu, 03 Nov 2022 15:55:19 +0000
schrieb roberto....@gmail.com:

> From: "Roberto A. Foglietta" <roberto....@gmail.com>
>
> linux install.tmpl: added OR with CONFIG_HAVE_OBJTOOL for objtools
> a fix for newer kernels (since 5.19 for sure) to include objtool
>
> The newer kernels (e.g. v5.19) when compiled and packaged by an ISAR
> do not include the objectool anymore in linux headears package. This
> obviously breaks any activity which expects to use that binary
> executable.
>
> Signed-off-by: Roberto A. Foglietta <roberto....@gmail.com>
> ---
> meta/recipes-kernel/linux/files/debian/isar/install.tmpl | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl
> b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl index
> 0a8645d..8a604e4 100644 ---
> a/meta/recipes-kernel/linux/files/debian/isar/install.tmpl +++
> b/meta/recipes-kernel/linux/files/debian/isar/install.tmpl @@ -177,7
> +177,7 @@ kernel_headers() { echo Module.symvers >> ${obj_hdr_files}
> fi
> (cd ${O}; find arch/${ARCH}/include include scripts -type f)
> >>${obj_hdr_files}
> - if [ -n "${CONFIG_STACK_VALIDATION}" ]; then
> + if [ -n "${CONFIG_STACK_VALIDATION}" -o -n
> "${CONFIG_HAVE_OBJTOOL}" ];

!x || !y is the same as ! (x && y)

i would find the latter more readable

Henning

Roberto A. Foglietta

unread,
Nov 7, 2022, 4:46:41 AM11/7/22
to Henning Schild, isar-...@googlegroups.com
On Mon, 7 Nov 2022 at 09:02, Henning Schild <henning...@siemens.com> wrote:
>
> Am Thu, 03 Nov 2022 15:55:19 +0000
> schrieb roberto....@gmail.com:

> > - if [ -n "${CONFIG_STACK_VALIDATION}" ]; then
> > + if [ -n "${CONFIG_STACK_VALIDATION}" -o -n
> > "${CONFIG_HAVE_OBJTOOL}" ];
>
> !x || !y is the same as ! (x && y)
>
> i would find the latter more readable
>

Dear Henning,

first of all, thanks for your feedback. Considering man test:

-n STRINGthe length of STRING is nonzero

it should be read as (X OR Y). Instead, using AND would be:

if ! test -z "${x}" -a -z "${y}"; then

For this reason, I think that the patch is correct.

Best regards, R-

Anton Mikanovich

unread,
Nov 17, 2022, 3:30:13 AM11/17/22
to roberto....@gmail.com, isar-...@googlegroups.com
03.11.2022 18:55, roberto....@gmail.com wrote:
> From: "Roberto A. Foglietta" <roberto....@gmail.com>
>
> linux install.tmpl: added OR with CONFIG_HAVE_OBJTOOL for objtools
> a fix for newer kernels (since 5.19 for sure) to include objtool
>
> The newer kernels (e.g. v5.19) when compiled and packaged by an ISAR
> do not include the objectool anymore in linux headears package. This
> obviously breaks any activity which expects to use that binary
> executable.
>
> Signed-off-by: Roberto A. Foglietta <roberto....@gmail.com>

Applied to next, thanks.

Roberto A. Foglietta

unread,
Nov 17, 2022, 3:28:44 PM11/17/22
to Anton Mikanovich, isar-...@googlegroups.com
Hi Anton,

I have integrated the isar next new HEAD into my project and tested
it against linux 5.10.150 (older) and 5.19.17 (newer) and both
linux-headers correctly includes objtool/objtool

$ for i in $(sudo find build -name linux-headers\*.deb); do dpkg -c $i
| grep -i objtool/objtool && echo $i; done

-rwxr-xr-x root/root 147464 2022-11-17 20:25
./usr/src/linux-headers-5.10.150/tools/objtool/objtool
build/tmp/work/debian-bullseye-amd64/linux-raidtest/5.19.17-r0/isar-apt/debian-bullseye-amd64/apt/debian-bullseye/pool/main/l/linux-raidtest/linux-headers-raidtest_5.10.150+r0_amd64.deb
-rwxr-xr-x root/root 180232 2022-11-17 20:58
./usr/src/linux-headers-5.19.17/tools/objtool/objtool
build/tmp/work/debian-bullseye-amd64/linux-raidtest/5.19.17-r0/linux-headers-raidtest_5.19.17+r0_amd64.deb
-rwxr-xr-x root/root 180232 2022-11-17 20:58
./usr/src/linux-headers-5.19.17/tools/objtool/objtool
build/tmp/deploy/isar-apt/debian-bullseye-amd64/apt/debian-bullseye/pool/main/l/linux-raidtest/linux-headers-raidtest_5.19.17+r0_amd64.deb

Best regards, R-
Reply all
Reply to author
Forward
0 new messages