Skip to content

Segmentation fault on Linux mipsle in yq 4.52.4 (works in 4.52.2) #2609

@frappy21

Description

@frappy21

Running yq on a Linux mipsle device causes a segmentation fault in version 4.52.4.
The same binary usage works correctly after downgrading to 4.52.2.

yq version: 4.52.4
Operating system: Linux (mipsle)
Installation method: official binary release

Download the yq 4.52.4 binary for Linux mipsle.
Run the command:
yq
No input file is required to reproduce the issue.

Actual behaviour
cause fall with stack trace

/tmp # yq -v
futexwakeup addr=0x344032c returned -89
SIGSEGV: segmentation violation
PC=0x7d900 m=0 sigcode=128 addr=0x0

goroutine 0 gp=0xe5e1c0 m=0 mp=0xe5ee80 [idle]:
runtime.futexwakeup(0x344032c, 0x1)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/os_linux.go:98 +0x84 fp=0x7ff141b0 sp=0x7ff14184 pc=0x7d900
runtime.semawakeup(...)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/lock_futex.go:161
runtime.unlock2Wake(0xe6083c, 0x0, 0x0)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/lock_spinbit.go:461 +0x2f0 fp=0x7ff141cc sp=0x7ff141b0 pc=0x3eba4
runtime.unlock2(0xe6083c)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/lock_spinbit.go:314 +0xc4 fp=0x7ff141e8 sp=0x7ff141cc pc=0x3e640
runtime.unlockWithRank(...)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/lockrank_off.go:35
runtime.unlock(...)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/lock_spinbit.go:261
runtime.mcommoninit(0x3440808, 0x2)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:1030 +0x298 fp=0x7ff1420c sp=0x7ff141e8 pc=0x87e9c
runtime.allocm(0x3430f08, 0x8e4548, 0x2)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:2326 +0x128 fp=0x7ff14238 sp=0x7ff1420c pc=0x8b2d8
runtime.newm(0x8e4548, 0x3430f08, 0x2)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:2870 +0x70 fp=0x7ff14254 sp=0x7ff14238 pc=0x8c194
runtime.startm(0x3430f08, 0x1, 0x0)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:3096 +0x1cc fp=0x7ff14280 sp=0x7ff14254 pc=0x8ca74
runtime.wakep()
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:3243 +0x1b4 fp=0x7ff142a0 sp=0x7ff14280 pc=0xcd790
runtime.newproc.func1()
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:5305 +0x94 fp=0x7ff142b8 sp=0x7ff142a0 pc=0x93cec
runtime.systemstack(0xe5e1c0)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/asm_mipsx.s:186 +0x7c fp=0x7ff142bc sp=0x7ff142b8 pc=0xd3b14

goroutine 1 gp=0x3402148 m=0 mp=0xe5ee80 [running, locked to thread]:
runtime.systemstack_switch()
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/asm_mipsx.s:147 +0x8 fp=0x343c670 sp=0x343c66c pc=0xd3a78
runtime.newproc(0x8e43e8)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:5298 +0x60 fp=0x343c688 sp=0x343c670 pc=0x93c48
runtime.init.6()
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:363 +0x44 fp=0x343c690 sp=0x343c688 pc=0x85ed0
runtime.doInit1(0xd42a40)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:8103 +0x13c fp=0x343c7b0 sp=0x343c690 pc=0x9b794
runtime.doInit(...)
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:8070
runtime.main()
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:203 +0x168 fp=0x343c7ec sp=0x343c7b0 pc=0x85968
runtime.goexit({})
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/asm_mipsx.s:657 +0x4 fp=0x343c7ec sp=0x343c7ec pc=0xd5a1c

goroutine 2 gp=0x3402508 m=nil [runnable]:
runtime.forcegchelper()
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:366 fp=0x343cfec sp=0x343cfec pc=0x85ee0
runtime.goexit({})
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/asm_mipsx.s:657 +0x4 fp=0x343cfec sp=0x343cfec pc=0xd5a1c
created by runtime.init.6 in goroutine 1
	/opt/hostedtoolcache/go/1.26.0/x64/src/runtime/proc.go:363 +0x44

r0   0x0	r1   0x1006
r2   0x1006	r3   0x6
r4   0x6	r5   0x1
r6   0x1	r7   0xffffff00
r8   0x1	r9   0x1
r10  0x6486f	r11  0x819d6f78
r12  0xd000	r13  0x8482c
r14  0x0	r15  0x0
r16  0xe019351d	r17  0x28984502
r18  0x3af4d4b6	r19  0xba9e3a7
r20  0x5252a114	r21  0xf412aa25
r22  0x0	r23  0xffffffc0
r24  0x1	r25  0xe0c3e639
r26  0x0	r27  0x0
r28  0x49d4ed5a	r29  0x7ff14184
r30  0xe5e1c0	r31  0x7d8f8
pc   0x7d900	link 0x7d8f8
lo   0x0	hi   0x0

Expected behaviour
showing help screen

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions