[Bug 270247] Linuxulator: golang from Ubuntu Jammy is broken

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 15 Mar 2023 17:06:26 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=270247

            Bug ID: 270247
           Summary: Linuxulator: golang from Ubuntu Jammy is broken
           Product: Base System
           Version: CURRENT
          Hardware: amd64
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: kern
          Assignee: bugs@FreeBSD.org
          Reporter: trasz@FreeBSD.org

On Ubuntu Jammy Jellyfish, the golang test suite fails immediately after
starting it:

root@pustak:/# cd /usr/share/go/test && go run run.go -v
# internal/reflectlite
runtime: unexpected return pc for runtime.mallocgc called from 0x0
stack: frame={sp:0xc00045a3e0, fp:0xc00045a458}
stack=[0xc000456000,0xc00045e000)
0x000000c00045a2e0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a2f0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a300:  0x0000000000000000  0x0000000000000000 
0x000000c00045a310:  0x0000000000000000  0x0000000000000000 
0x000000c00045a320:  0x0000000000000000  0x0000000000000000 
0x000000c00045a330:  0x0000000000000000  0x0000000000000000 
0x000000c00045a340:  0x0000000000000000  0x0000000000000000 
0x000000c00045a350:  0x0000000000000000  0x0000000000000000 
0x000000c00045a360:  0x0000000000000000  0x0000000000000000 
0x000000c00045a370:  0x0000000000000000  0x0000000000000000 
0x000000c00045a380:  0x0000000000000000  0x0000000000000000 
0x000000c00045a390:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3a0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3b0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3c0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3d0:  0x0000000000000000  0x000000000040d313
<runtime.mallocgc+0x0000000000000673> 
0x000000c00045a3e0: <0x000000c0004549b0  0x0000000000000000 
0x000000c00045a3f0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a400:  0x0000000000203000  0x000000082810ad20 
0x000000c00045a410:  0x0000000000000000  0x0000000000000000 
0x000000c00045a420:  0x0000000000000050  0x000000c00004c400 
0x000000c00045a430:  0x0000000000000000  0x0000000000000000 
0x000000c00045a440:  0x0000000000000000  0x000000c0000d0470 
0x000000c00045a450: !0x0000000000000000 >0x0000000000000000 
0x000000c00045a460:  0x0000000000cec5c0  0x0000000000000001 
0x000000c00045a470:  0x000000c0000d04c8  0x0000000000bb19df
<cmd/compile/internal/importer.(*iimporter).typAt+0x00000000000000bf> 
0x000000c00045a480:  0x0000000000cab660  0x000000c000401470 
0x000000c00045a490:  0x0000000000001670  0x000000c000454968 
0x000000c00045a4a0:  0x000000c000454968  0x000000c00004c400 
0x000000c00045a4b0:  0x000000c00040f260  0x000000000000000a 
0x000000c00045a4c0:  0x660600c0000d04d8  0x000000c0000d04f0 
0x000000c00045a4d0:  0x0000000000bb3533
<cmd/compile/internal/importer.(*importReader).typ+0x0000000000000033> 
0x000000c00044a000 
0x000000c00045a4e0:  0x0000000000001670  0x0000000000000000 
0x000000c00045a4f0:  0x000000c0000d06d0  0x0000000000bb45df
<cmd/compile/internal/importer.(*importReader).doType+0x0000000000000f5f> 
0x000000c00045a500:  0x000000c000454960  0x0000000000000000 
0x000000c00045a510:  0x0000000000000000  0x0000000000000000 
0x000000c00045a520:  0x0000000000000000  0x0000000000000000 
0x000000c00045a530:  0x0000000000000000  0x0000000000000000 
0x000000c00045a540:  0x0000035f00000002  0x0000000000000000 
0x000000c00045a550:  0x0000000000000006 
fatal error: unknown caller pc

runtime stack:
runtime.throw({0xd2c6b3?, 0x12f82c0?})
        /usr/lib/go-1.18/src/runtime/panic.go:992 +0x71
runtime.gentraceback(0xffffffffffff8000?, 0x6?, 0xc00036f380?, 0x828107dd8?,
0x0, 0x0, 0x7fffffff, 0xd54500, 0x0?, 0x0)
        /usr/lib/go-1.18/src/runtime/traceback.go:254 +0x1a36
runtime.copystack(0xc0000021a0, 0x800000002?)
        /usr/lib/go-1.18/src/runtime/stack.go:930 +0x2f5
runtime.newstack()
        /usr/lib/go-1.18/src/runtime/stack.go:1110 +0x497
runtime.morestack()
        /usr/lib/go-1.18/src/runtime/asm_amd64.s:547 +0x8b

goroutine 1 [copystack]:
runtime.heapBitsSetType(0xc0004549b0?, 0x0?, 0x0?, 0x0?)
        /usr/lib/go-1.18/src/runtime/mbitmap.go:832 +0xbcc fp=0xc00045a3e0
sp=0xc00045a3d8 pc=0x415d2c
runtime: unexpected return pc for runtime.mallocgc called from 0x0
stack: frame={sp:0xc00045a3e0, fp:0xc00045a458}
stack=[0xc000456000,0xc00045e000)
0x000000c00045a2e0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a2f0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a300:  0x0000000000000000  0x0000000000000000 
0x000000c00045a310:  0x0000000000000000  0x0000000000000000 
0x000000c00045a320:  0x0000000000000000  0x0000000000000000 
0x000000c00045a330:  0x0000000000000000  0x0000000000000000 
0x000000c00045a340:  0x0000000000000000  0x0000000000000000 
0x000000c00045a350:  0x0000000000000000  0x0000000000000000 
0x000000c00045a360:  0x0000000000000000  0x0000000000000000 
0x000000c00045a370:  0x0000000000000000  0x0000000000000000 
0x000000c00045a380:  0x0000000000000000  0x0000000000000000 
0x000000c00045a390:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3a0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3b0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3c0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a3d0:  0x0000000000000000  0x000000000040d313
<runtime.mallocgc+0x0000000000000673> 
0x000000c00045a3e0: <0x000000c0004549b0  0x0000000000000000 
0x000000c00045a3f0:  0x0000000000000000  0x0000000000000000 
0x000000c00045a400:  0x0000000000203000  0x000000082810ad20 
0x000000c00045a410:  0x0000000000000000  0x0000000000000000 
0x000000c00045a420:  0x0000000000000050  0x000000c00004c400 
0x000000c00045a430:  0x0000000000000000  0x0000000000000000 
0x000000c00045a440:  0x0000000000000000  0x000000c0000d0470 
0x000000c00045a450: !0x0000000000000000 >0x0000000000000000 
0x000000c00045a460:  0x0000000000cec5c0  0x0000000000000001 
0x000000c00045a470:  0x000000c0000d04c8  0x0000000000bb19df
<cmd/compile/internal/importer.(*iimporter).typAt+0x00000000000000bf> 
0x000000c00045a480:  0x0000000000cab660  0x000000c000401470 
0x000000c00045a490:  0x0000000000001670  0x000000c000454968 
0x000000c00045a4a0:  0x000000c000454968  0x000000c00004c400 
0x000000c00045a4b0:  0x000000c00040f260  0x000000000000000a 
0x000000c00045a4c0:  0x660600c0000d04d8  0x000000c0000d04f0 
0x000000c00045a4d0:  0x0000000000bb3533
<cmd/compile/internal/importer.(*importReader).typ+0x0000000000000033> 
0x000000c00044a000 
0x000000c00045a4e0:  0x0000000000001670  0x0000000000000000 
0x000000c00045a4f0:  0x000000c0000d06d0  0x0000000000bb45df
<cmd/compile/internal/importer.(*importReader).doType+0x0000000000000f5f> 
0x000000c00045a500:  0x000000c000454960  0x0000000000000000 
0x000000c00045a510:  0x0000000000000000  0x0000000000000000 
0x000000c00045a520:  0x0000000000000000  0x0000000000000000 
0x000000c00045a530:  0x0000000000000000  0x0000000000000000 
0x000000c00045a540:  0x0000035f00000002  0x0000000000000000 
0x000000c00045a550:  0x0000000000000006 
runtime.mallocgc(0x0, 0xcec5c0, 0x1)
        /usr/lib/go-1.18/src/runtime/malloc.go:1117 +0x673 fp=0xc00045a458
sp=0xc00045a3e0 pc=0x40d313
# sync
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x50 pc=0x5b4342]

goroutine 46 [running]:
cmd/compile/internal/ir.HasUniquePos({0x0, 0x0})
        /usr/lib/go-1.18/src/cmd/compile/internal/ir/node.go:535 +0x22
cmd/compile/internal/ssagen.(*state).exprCheckPtr(0xc000b07a00, {0x0?, 0x0?},
0x1)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:2564 +0x70
cmd/compile/internal/ssagen.(*state).expr(...)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:2560
cmd/compile/internal/ssagen.(*state).exprPtr(0xc000b07a00, {0xe9b778,
0xc000685450}, 0x0, {0x8?, 0x47a978?})
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:5419 +0x3f
cmd/compile/internal/ssagen.(*state).exprCheckPtr(0xc000b07a00, {0xe9be80?,
0xc000689a40?}, 0x1)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:3048 +0x2a1a
cmd/compile/internal/ssagen.(*state).expr(...)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:2560
cmd/compile/internal/ssagen.(*state).exprCheckPtr(0xc000b07a00, {0xe9c7e0?,
0xc000690960?}, 0x1)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:3115 +0x3b75
cmd/compile/internal/ssagen.(*state).expr(...)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:2560
cmd/compile/internal/ssagen.(*state).stmt(0xc000b07a00, {0xe99db0,
0xc00009bf40?})
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:1633 +0xb71
cmd/compile/internal/ssagen.(*state).stmtList(...)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:1399
cmd/compile/internal/ssagen.(*state).stmt(0xc000b07a00, {0xe9ae18,
0xc000696850?})
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:1417 +0x48ee
cmd/compile/internal/ssagen.(*state).stmtList(...)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:1399
cmd/compile/internal/ssagen.buildssa(0xc00040edc0, 0x3)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/ssa.go:582 +0x1eb4
cmd/compile/internal/ssagen.Compile(0xc00040edc0, 0xc000397790?)
        /usr/lib/go-1.18/src/cmd/compile/internal/ssagen/pgen.go:183 +0x4c
cmd/compile/internal/gc.compileFunctions.func4.1(0xc000421ce0?)
        /usr/lib/go-1.18/src/cmd/compile/internal/gc/compile.go:153 +0x3a
cmd/compile/internal/gc.compileFunctions.func3.1()
        /usr/lib/go-1.18/src/cmd/compile/internal/gc/compile.go:140 +0x4d
created by cmd/compile/internal/gc.compileFunctions.func3
        /usr/lib/go-1.18/src/cmd/compile/internal/gc/compile.go:138 +0x78
root@pustak:/usr/share/go/test# 
root@pustak:/usr/share/go/test# cat /etc/os-release 
PRETTY_NAME="Ubuntu 22.04.2 LTS"
NAME="Ubuntu"
VERSION_ID="22.04"
VERSION="22.04.2 LTS (Jammy Jellyfish)"
VERSION_CODENAME=jammy
ID=ubuntu
ID_LIKE=debian
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
UBUNTU_CODENAME=jammy

Golang test suite from an older Ubuntu release (Focal) works just fine.

-- 
You are receiving this mail because:
You are the assignee for the bug.