Message ID | 20240227100709.1154-3-jose.quaresma@foundries.io |
---|---|
State | Accepted, archived |
Commit | 827c60b79e7fcafd14e68870f6b69dcc48ac9c39 |
Headers | show |
Series | [RFC,1/3] go: rework patch to avoid identation | expand |
Is this 1.21 upgrade going to be merged in LTS 5.0? The reason I'm asking is that I'm going to upgrade some recipes in meta-virt and I'd like to check what would be the go version in the next release. P.S. Is this runtime error OE specific? Is it caused by some OE specific patch? Regards, Qi On 2/27/24 18:07, Jose Quaresma wrote: > With go-1.21 dynamic linking cause a runtime panic: > > | root@qemux86-64:~# go-helloworld > | panic: runtime error: index out of range [0] with length 0 > | > | goroutine 1 [running]: > | flag.init() > | /usr/lib/go/src/flag/flag.go:1199 +0xf9 > > In my opinion, this would be a good trade-off so that we can update and > leave the version 1.20 for the next LTS 5.0 since we are already quite > behind on the version available upstream which already has the 1.22 available. > > Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> > --- > meta/classes-recipe/goarch.bbclass | 14 +++++++------- > 1 file changed, 7 insertions(+), 7 deletions(-) > > diff --git a/meta/classes-recipe/goarch.bbclass b/meta/classes-recipe/goarch.bbclass > index 1ebe03864f..6899ec28e4 100644 > --- a/meta/classes-recipe/goarch.bbclass > +++ b/meta/classes-recipe/goarch.bbclass > @@ -38,13 +38,13 @@ BASE_GOARM:armv5 = '5' > # Go supports dynamic linking on a limited set of architectures. > # See the supportsDynlink function in go/src/cmd/compile/internal/gc/main.go > GO_DYNLINK = "" > -GO_DYNLINK:arm ?= "1" > -GO_DYNLINK:aarch64 ?= "1" > -GO_DYNLINK:x86 ?= "1" > -GO_DYNLINK:x86-64 ?= "1" > -GO_DYNLINK:powerpc64 ?= "1" > -GO_DYNLINK:powerpc64le ?= "1" > -GO_DYNLINK:class-native ?= "" > +GO_DYNLINK:arm = "" > +GO_DYNLINK:aarch64 = "" > +GO_DYNLINK:x86 = "" > +GO_DYNLINK:x86-64 = "" > +GO_DYNLINK:powerpc64 = "" > +GO_DYNLINK:powerpc64le = "" > +GO_DYNLINK:class-native = "" > GO_DYNLINK:class-nativesdk = "" > > # define here because everybody inherits this class > > -=-=-=-=-=-=-=-=-=-=-=- > Links: You receive all messages sent to this group. > View/Reply Online (#196251): https://lists.openembedded.org/g/openembedded-core/message/196251 > Mute This Topic: https://lists.openembedded.org/mt/104600087/7304865 > Group Owner: openembedded-core+owner@lists.openembedded.org > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [Qi.Chen@eng.windriver.com] > -=-=-=-=-=-=-=-=-=-=-=- >
ChenQi <Qi.Chen@windriver.com> escreveu (quarta, 28/02/2024 à(s) 02:38): > Is this 1.21 upgrade going to be merged in LTS 5.0? > The reason I'm asking is that I'm going to upgrade some recipes in > meta-virt and I'd like to check what would be the go version in the next > release. > I am still testing in my distro with the overwall virtualization stack we use and everything seems fine so far. If no issues come in, I intend to submit the final version today or tomorrow at the latest. > P.S. > Is this runtime error OE specific? Is it caused by some OE specific patch? > I don't know the reason for the runtime error yet. When I start I suspected it could be due to separate-host-and-target-builds patch https://git.openembedded.org/openembedded-core/tree/meta/recipes-devtools/go/go/0005-cmd-dist-separate-host-and-target-builds.patch?id=44f81b6239f0f08877ccd6507c2a81f3650f193b After several unsuccessful attempts, I was going to use gdb to debug the target. I decided to disable the dynamic linking because it would make it easier for me with the symbols and I would have just one binary. After that, when I was going to run gdb on the target everything started working without any issue. Jose > Regards, > Qi > > On 2/27/24 18:07, Jose Quaresma wrote: > > With go-1.21 dynamic linking cause a runtime panic: > > > > | root@qemux86-64:~# go-helloworld > > | panic: runtime error: index out of range [0] with length 0 > > | > > | goroutine 1 [running]: > > | flag.init() > > | /usr/lib/go/src/flag/flag.go:1199 +0xf9 > > > > In my opinion, this would be a good trade-off so that we can update and > > leave the version 1.20 for the next LTS 5.0 since we are already quite > > behind on the version available upstream which already has the 1.22 > available. > > > > Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> > > --- > > meta/classes-recipe/goarch.bbclass | 14 +++++++------- > > 1 file changed, 7 insertions(+), 7 deletions(-) > > > > diff --git a/meta/classes-recipe/goarch.bbclass > b/meta/classes-recipe/goarch.bbclass > > index 1ebe03864f..6899ec28e4 100644 > > --- a/meta/classes-recipe/goarch.bbclass > > +++ b/meta/classes-recipe/goarch.bbclass > > @@ -38,13 +38,13 @@ BASE_GOARM:armv5 = '5' > > # Go supports dynamic linking on a limited set of architectures. > > # See the supportsDynlink function in > go/src/cmd/compile/internal/gc/main.go > > GO_DYNLINK = "" > > -GO_DYNLINK:arm ?= "1" > > -GO_DYNLINK:aarch64 ?= "1" > > -GO_DYNLINK:x86 ?= "1" > > -GO_DYNLINK:x86-64 ?= "1" > > -GO_DYNLINK:powerpc64 ?= "1" > > -GO_DYNLINK:powerpc64le ?= "1" > > -GO_DYNLINK:class-native ?= "" > > +GO_DYNLINK:arm = "" > > +GO_DYNLINK:aarch64 = "" > > +GO_DYNLINK:x86 = "" > > +GO_DYNLINK:x86-64 = "" > > +GO_DYNLINK:powerpc64 = "" > > +GO_DYNLINK:powerpc64le = "" > > +GO_DYNLINK:class-native = "" > > GO_DYNLINK:class-nativesdk = "" > > > > # define here because everybody inherits this class > > > > -=-=-=-=-=-=-=-=-=-=-=- > > Links: You receive all messages sent to this group. > > View/Reply Online (#196251): > https://lists.openembedded.org/g/openembedded-core/message/196251 > > Mute This Topic: https://lists.openembedded.org/mt/104600087/7304865 > > Group Owner: openembedded-core+owner@lists.openembedded.org > > Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [ > Qi.Chen@eng.windriver.com] > > -=-=-=-=-=-=-=-=-=-=-=- > > > >
diff --git a/meta/classes-recipe/goarch.bbclass b/meta/classes-recipe/goarch.bbclass index 1ebe03864f..6899ec28e4 100644 --- a/meta/classes-recipe/goarch.bbclass +++ b/meta/classes-recipe/goarch.bbclass @@ -38,13 +38,13 @@ BASE_GOARM:armv5 = '5' # Go supports dynamic linking on a limited set of architectures. # See the supportsDynlink function in go/src/cmd/compile/internal/gc/main.go GO_DYNLINK = "" -GO_DYNLINK:arm ?= "1" -GO_DYNLINK:aarch64 ?= "1" -GO_DYNLINK:x86 ?= "1" -GO_DYNLINK:x86-64 ?= "1" -GO_DYNLINK:powerpc64 ?= "1" -GO_DYNLINK:powerpc64le ?= "1" -GO_DYNLINK:class-native ?= "" +GO_DYNLINK:arm = "" +GO_DYNLINK:aarch64 = "" +GO_DYNLINK:x86 = "" +GO_DYNLINK:x86-64 = "" +GO_DYNLINK:powerpc64 = "" +GO_DYNLINK:powerpc64le = "" +GO_DYNLINK:class-native = "" GO_DYNLINK:class-nativesdk = "" # define here because everybody inherits this class
With go-1.21 dynamic linking cause a runtime panic: | root@qemux86-64:~# go-helloworld | panic: runtime error: index out of range [0] with length 0 | | goroutine 1 [running]: | flag.init() | /usr/lib/go/src/flag/flag.go:1199 +0xf9 In my opinion, this would be a good trade-off so that we can update and leave the version 1.20 for the next LTS 5.0 since we are already quite behind on the version available upstream which already has the 1.22 available. Signed-off-by: Jose Quaresma <jose.quaresma@foundries.io> --- meta/classes-recipe/goarch.bbclass | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-)