All of lore.kernel.org
 help / color / mirror / Atom feed
* [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master
@ 2023-12-11  9:53 liu.ming50
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 1/3] cni: reproducible builds: pass -trimpath liu.ming50
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: liu.ming50 @ 2023-12-11  9:53 UTC (permalink / raw)
  To: meta-virtualization; +Cc: Ming Liu

From: Ming Liu <liu.ming50@gmail.com>

We observed some library relocating issues on cni recipe, cherry pick
some fixes from master.

Bruce Ashfield (1):
  cni: reproducible builds: pass -trimpath

Changqing Li (1):
  cni: clean dir ${B}/plugins before do_compile

Chen Qi (1):
  cni: fix textrel QA issue

 recipes-networking/cni/cni_git.bb | 8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

-- 
2.34.1



^ permalink raw reply	[flat|nested] 5+ messages in thread

* [meta-virtualization] [kirkstone] [PATCH 1/3] cni: reproducible builds: pass -trimpath
  2023-12-11  9:53 [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master liu.ming50
@ 2023-12-11  9:53 ` liu.ming50
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 2/3] cni: fix textrel QA issue liu.ming50
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: liu.ming50 @ 2023-12-11  9:53 UTC (permalink / raw)
  To: meta-virtualization; +Cc: Bruce Ashfield

From: Bruce Ashfield <bruce.ashfield@gmail.com>

Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---
 recipes-networking/cni/cni_git.bb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/recipes-networking/cni/cni_git.bb b/recipes-networking/cni/cni_git.bb
index cac62ae1..fd9115ab 100644
--- a/recipes-networking/cni/cni_git.bb
+++ b/recipes-networking/cni/cni_git.bb
@@ -39,10 +39,10 @@ do_compile() {
 	export GO111MODULE=off
 
 	cd ${B}/src/github.com/containernetworking/cni/libcni
-	${GO} build
+	${GO} build -trimpath
 
 	cd ${B}/src/github.com/containernetworking/cni/cnitool
-	${GO} build
+	${GO} build -trimpath
 
 	cd ${B}/src/github.com/containernetworking/plugins
 	PLUGINS="$(ls -d plugins/meta/*; ls -d plugins/ipam/*; ls -d plugins/main/* | grep -v windows)"
@@ -50,7 +50,7 @@ do_compile() {
 	for p in $PLUGINS; do
 	    plugin="$(basename "$p")"
 	    echo "building: $p"
-	    ${GO} build -o ${B}/plugins/bin/$plugin github.com/containernetworking/plugins/$p
+	    ${GO} build -trimpath -o ${B}/plugins/bin/$plugin github.com/containernetworking/plugins/$p
 	done
 }
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [meta-virtualization] [kirkstone] [PATCH 2/3] cni: fix textrel QA issue
  2023-12-11  9:53 [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master liu.ming50
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 1/3] cni: reproducible builds: pass -trimpath liu.ming50
@ 2023-12-11  9:53 ` liu.ming50
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 3/3] cni: clean dir ${B}/plugins before do_compile liu.ming50
  2023-12-14 19:59 ` [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master Bruce Ashfield
  3 siblings, 0 replies; 5+ messages in thread
From: liu.ming50 @ 2023-12-11  9:53 UTC (permalink / raw)
  To: meta-virtualization; +Cc: Chen Qi, Bruce Ashfield

From: Chen Qi <Qi.Chen@windriver.com>

When building cni, we get textrel QA issue like below:

  cni: ELF binary /usr/libexec/cni/macvlan has relocations in .text

The problem could be solved by adding '-buildmode=pie' to ${GO}.

In go.bbclass, this flag is added to GOBUILDFLAGS conditionally,
that is, if the arch is not mips nor riscv32, this '-buildmode=pie'
is added to GOBUILDFLAGS. So make use of that.

Signed-off-by: Chen Qi <Qi.Chen@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---
 recipes-networking/cni/cni_git.bb | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/recipes-networking/cni/cni_git.bb b/recipes-networking/cni/cni_git.bb
index fd9115ab..854c7a04 100644
--- a/recipes-networking/cni/cni_git.bb
+++ b/recipes-networking/cni/cni_git.bb
@@ -39,10 +39,10 @@ do_compile() {
 	export GO111MODULE=off
 
 	cd ${B}/src/github.com/containernetworking/cni/libcni
-	${GO} build -trimpath
+	${GO} build ${GOBUILDFLAGS}
 
 	cd ${B}/src/github.com/containernetworking/cni/cnitool
-	${GO} build -trimpath
+	${GO} build ${GOBUILDFLAGS}
 
 	cd ${B}/src/github.com/containernetworking/plugins
 	PLUGINS="$(ls -d plugins/meta/*; ls -d plugins/ipam/*; ls -d plugins/main/* | grep -v windows)"
@@ -50,7 +50,7 @@ do_compile() {
 	for p in $PLUGINS; do
 	    plugin="$(basename "$p")"
 	    echo "building: $p"
-	    ${GO} build -trimpath -o ${B}/plugins/bin/$plugin github.com/containernetworking/plugins/$p
+	    ${GO} build ${GOBUILDFLAGS} -o ${B}/plugins/bin/$plugin github.com/containernetworking/plugins/$p
 	done
 }
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [meta-virtualization] [kirkstone] [PATCH 3/3] cni: clean dir ${B}/plugins before do_compile
  2023-12-11  9:53 [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master liu.ming50
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 1/3] cni: reproducible builds: pass -trimpath liu.ming50
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 2/3] cni: fix textrel QA issue liu.ming50
@ 2023-12-11  9:53 ` liu.ming50
  2023-12-14 19:59 ` [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master Bruce Ashfield
  3 siblings, 0 replies; 5+ messages in thread
From: liu.ming50 @ 2023-12-11  9:53 UTC (permalink / raw)
  To: meta-virtualization; +Cc: Changqing Li, Bruce Ashfield

From: Changqing Li <changqing.li@windriver.com>

Clean dir ${B}/plugins before do_compile to avoid cni generated binaries
like /usr/libexec/cni/bridge has wrong dynamic linker path and reports
error like: /usr/libexec/cni/bridge: no such file or directory".

Reproduce steps:
1. bitbake cni
2. enable usrmerge feature in local.conf
3. bitbake cni

After step 2, GOBUILDFLAGS changed,
"-I /lib64/ld-linux-aarch64.so.1" -> "/usr/lib/ld-linux-aarch64.so.1"

But "go build" seems only check if the cached packagefile changed, since
all not changed, the dynamic linker still use the old one, maybe go
build should improve this.

Clean dir ${B}/plugins to trigger rebuild of the binaries here.

Signed-off-by: Changqing Li <changqing.li@windriver.com>
Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com>
---
 recipes-networking/cni/cni_git.bb | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/recipes-networking/cni/cni_git.bb b/recipes-networking/cni/cni_git.bb
index 854c7a04..f84e8a43 100644
--- a/recipes-networking/cni/cni_git.bb
+++ b/recipes-networking/cni/cni_git.bb
@@ -54,6 +54,8 @@ do_compile() {
 	done
 }
 
+do_compile[cleandirs] = "${B}/plugins"
+
 do_install() {
     localbindir="${libexecdir}/cni/"
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master
  2023-12-11  9:53 [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master liu.ming50
                   ` (2 preceding siblings ...)
  2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 3/3] cni: clean dir ${B}/plugins before do_compile liu.ming50
@ 2023-12-14 19:59 ` Bruce Ashfield
  3 siblings, 0 replies; 5+ messages in thread
From: Bruce Ashfield @ 2023-12-14 19:59 UTC (permalink / raw)
  To: Ming Liu; +Cc: meta-virtualization

In message: [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master
on 11/12/2023 Ming Liu wrote:

> From: Ming Liu <liu.ming50@gmail.com>
> 
> We observed some library relocating issues on cni recipe, cherry pick
> some fixes from master.
> 
> Bruce Ashfield (1):
>   cni: reproducible builds: pass -trimpath
> 
> Changqing Li (1):
>   cni: clean dir ${B}/plugins before do_compile
> 
> Chen Qi (1):
>   cni: fix textrel QA issue

merged to kirkstone.

Bruce

> 
>  recipes-networking/cni/cni_git.bb | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> -- 
> 2.34.1
> 

> 
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#8491): https://lists.yoctoproject.org/g/meta-virtualization/message/8491
> Mute This Topic: https://lists.yoctoproject.org/mt/103105934/1050810
> Group Owner: meta-virtualization+owner@lists.yoctoproject.org
> Unsubscribe: https://lists.yoctoproject.org/g/meta-virtualization/unsub [bruce.ashfield@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
> 



^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2023-12-14 19:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-12-11  9:53 [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master liu.ming50
2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 1/3] cni: reproducible builds: pass -trimpath liu.ming50
2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 2/3] cni: fix textrel QA issue liu.ming50
2023-12-11  9:53 ` [meta-virtualization] [kirkstone] [PATCH 3/3] cni: clean dir ${B}/plugins before do_compile liu.ming50
2023-12-14 19:59 ` [meta-virtualization] [kirkstone] [PATCH 0/3] cni: cherry pick fixes from master Bruce Ashfield

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.