Skip to content

Having trouble running the examples #6

@JanGordon

Description

@JanGordon

I've installed wgpu-native.so into my /usr/lib directory and then copied the quick start code in the projects main README. I then build with CGO_ENABLED=0 go build and run it. I get this error (on Pop!_OS 22.04 LTS x86_64 with a GTX 1060):

SIGSEGV: segmentation violation
PC=0xc000059d00 m=0 sigcode=2 addr=0xc000059d00
signal arrived during cgo execution

goroutine 1 gp=0xc000002380 m=0 mp=0x5b0b00 [syscall]:
runtime.cgocall(0x4af8a0, 0xc000114090)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/cgocall.go:167 +0x4b fp=0xc000059b58 sp=0xc000059b20 pc=0x46d2ab
github.com/go-webgpu/goffi/internal/syscall.Call6Float(0x74d436259920, {0x8c24130, 0x0, 0xc000059e28, 0x0, 0x0, 0x0}, {0x0, 0x0, 0x0, ...})
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/goffi@v0.3.8/internal/syscall/syscall_unix_amd64.go:49 +0x165 fp=0xc000059c08 sp=0xc000059b58 pc=0x4af865
github.com/go-webgpu/goffi/internal/arch/amd64.(*Implementation).Execute(0x5db360, 0xc0001101e0, 0xc000059d38?, 0xc0000120e0, {0xc000010078?, 0x4c41e0?, 0xc000059d01?})
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/goffi@v0.3.8/internal/arch/amd64/call_unix.go:80 +0x2e5 fp=0xc000059d00 sp=0xc000059c08 pc=0x4afc25
github.com/go-webgpu/goffi/ffi.executeFunction(...)
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/goffi@v0.3.8/ffi/call.go:20
github.com/go-webgpu/goffi/ffi.CallFunctionContext({0x50e4a0?, 0x5db360?}, 0xc0001101e0, 0x74d436259920, 0xc0000120e0, {0xc000010078, 0x3, 0x3})
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/goffi@v0.3.8/ffi/ffi.go:229 +0xa7 fp=0xc000059d48 sp=0xc000059d00 pc=0x4b25e7
github.com/go-webgpu/goffi/ffi.CallFunction(...)
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/goffi@v0.3.8/ffi/ffi.go:267
github.com/go-webgpu/webgpu/wgpu.(*unixProc).Call(0xc0001101c0, {0xc000018660, 0x3, 0x46d9f9?})
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/webgpu@v0.2.1/wgpu/loader_unix.go:124 +0x356 fp=0xc000059df0 sp=0xc000059d48 pc=0x4b6056
github.com/go-webgpu/webgpu/wgpu.(*Instance).RequestAdapter(0xc0000120d8, 0x0)
        /home/jangordon/go/pkg/mod/github.com/go-webgpu/webgpu@v0.2.1/wgpu/adapter.go:145 +0x21d fp=0xc000059ea8 sp=0xc000059df0 pc=0x4b56fd
main.main()
        /home/jangordon/Documents/gowegpu/main.go:24 +0x98 fp=0xc000059f50 sp=0xc000059ea8 pc=0x4b8638
runtime.main()
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:285 +0x29d fp=0xc000059fe0 sp=0xc000059f50 pc=0x43f1bd
runtime.goexit({})
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc000059fe8 sp=0xc000059fe0 pc=0x4757c1

goroutine 2 gp=0xc000002e00 m=nil [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:460 +0xce fp=0xc000044fa8 sp=0xc000044f88 pc=0x46f10e
runtime.goparkunlock(...)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:466
runtime.forcegchelper()
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:373 +0xb3 fp=0xc000044fe0 sp=0xc000044fa8 pc=0x43f4f3
runtime.goexit({})
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc000044fe8 sp=0xc000044fe0 pc=0x4757c1
created by runtime.init.7 in goroutine 1
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:361 +0x1a

goroutine 3 gp=0xc000003340 m=nil [GC sweep wait]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:460 +0xce fp=0xc000045780 sp=0xc000045760 pc=0x46f10e
runtime.goparkunlock(...)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:466
runtime.bgsweep(0xc000026080)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgcsweep.go:279 +0x94 fp=0xc0000457c8 sp=0xc000045780 pc=0x42a914
runtime.gcenable.gowrap1()
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgc.go:212 +0x25 fp=0xc0000457e0 sp=0xc0000457c8 pc=0x41e965
runtime.goexit({})
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000457e8 sp=0xc0000457e0 pc=0x4757c1
created by runtime.gcenable in goroutine 1
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgc.go:212 +0x66

goroutine 4 gp=0xc000003500 m=nil [GC scavenge wait]:
runtime.gopark(0xc000026080?, 0x50d228?, 0x1?, 0x0?, 0xc000003500?)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:460 +0xce fp=0xc000045f78 sp=0xc000045f58 pc=0x46f10e
runtime.goparkunlock(...)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:466
runtime.(*scavengerState).park(0x5afbc0)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc000045fa8 sp=0xc000045f78 pc=0x4283e9
runtime.bgscavenge(0xc000026080)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgcscavenge.go:653 +0x3c fp=0xc000045fc8 sp=0xc000045fa8 pc=0x42897c
runtime.gcenable.gowrap2()
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgc.go:213 +0x25 fp=0xc000045fe0 sp=0xc000045fc8 pc=0x41e905
runtime.goexit({})
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc000045fe8 sp=0xc000045fe0 pc=0x4757c1
created by runtime.gcenable in goroutine 1
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mgc.go:213 +0xa5

goroutine 5 gp=0xc000003a40 m=nil [GOMAXPROCS updater (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:460 +0xce fp=0xc000046788 sp=0xc000046768 pc=0x46f10e
runtime.goparkunlock(...)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:466
runtime.updateMaxProcsGoroutine()
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:6706 +0xe7 fp=0xc0000467e0 sp=0xc000046788 pc=0x44d2e7
runtime.goexit({})
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000467e8 sp=0xc0000467e0 pc=0x4757c1
created by runtime.defaultGOMAXPROCSUpdateEnable in goroutine 1
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:6694 +0x37

goroutine 6 gp=0xc00010a000 m=nil [finalizer wait]:
runtime.gopark(0x44e2b5?, 0x416b25?, 0xb8?, 0x1?, 0xc000002380?)
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/proc.go:460 +0xce fp=0xc000044620 sp=0xc000044600 pc=0x46f10e
runtime.runFinalizers()
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mfinal.go:210 +0x107 fp=0xc0000447e0 sp=0xc000044620 pc=0x41d907
runtime.goexit({})
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/asm_amd64.s:1693 +0x1 fp=0xc0000447e8 sp=0xc0000447e0 pc=0x4757c1
created by runtime.createfing in goroutine 1
        /home/jangordon/go/pkg/mod/golang.org/toolchain@v0.0.1-go1.25.0.linux-amd64/src/runtime/mfinal.go:172 +0x3d

rax    0x90888b0
rbx    0x8c24130
rcx    0x0
rdx    0x0
rdi    0x1
rsi    0x90888b0
rbp    0x7fffc379e6c0
rsp    0x7fffc379e578
r8     0xc000034008
r9     0x7fffc379e6d8
r10    0x8c1d660
r11    0x74d48421ace0
r12    0xc000114090
r13    0x38
r14    0xc000059d00
r15    0x7fffc379e670
rip    0xc000059d00
rflags 0x10246
cs     0x33
fs     0x0
gs     0x0

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions