Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

armhv7: panic: unaligned 64-bit atomic operation #10545

Closed
mrmstn opened this issue Jul 1, 2021 · 2 comments
Closed

armhv7: panic: unaligned 64-bit atomic operation #10545

mrmstn opened this issue Jul 1, 2021 · 2 comments

Comments

@mrmstn
Copy link

mrmstn commented Jul 1, 2021

When filing a bug, please include the following headings if possible. Any example text in this template can be deleted.

Overview of the Issue

Hi there

I'm using the release consul_1.10.0_linux_armhfv6 on a raspery pi 4B 4G model.

Sadly, the agent crashes always with the panic message: unaligned 64-bit atomic operation

2021-07-01T22:58:55.832+0200 [INFO]  agent.server: Handled event for server in area: event=member-join server=pi-rack1.dc1 area=wan
2021-07-01T22:58:55.834+0200 [INFO]  agent.server: Raft data found, disabling bootstrap mode
panic: unaligned 64-bit atomic operation

goroutine 70 [running]:
runtime/internal/atomic.panicUnaligned()

I made a downgrad to 1.9.7 and it worked out of the box

Reproduction Steps

Steps to reproduce this issue, eg:

  1. Setup a raspberry PI 4B with the latest raspian OS
  2. wget https://releases.hashicorp.com/consul/1.10.0/consul_1.10.0_linux_armhfv6.zip
  3. extract and start consul agent -dev
  4. View error

Consul info for both Client and Server

Client info
Error querying agent: Get "http://127.0.0.1:8500/v1/agent/self": dial tcp 127.0.0.1:8500: connect: connection refused
Server info
Error querying agent: Get "http://127.0.0.1:8500/v1/agent/self": dial tcp 127.0.0.1:8500: connect: connection refused

Operating system and Environment details

OS, Architecture, and any other information you can provide about the environment.

Log Fragments

2021-07-01T22:58:55.831+0200 [INFO]  agent.server: Adding LAN server: server="pi-rack1 (Addr: tcp/192.168.5.63:8300) (DC: dc1)"
2021-07-01T22:58:55.832+0200 [WARN]  agent: grpc: addrConn.createTransport failed to connect to {192.168.5.63:8300 0 pi-rack1 <nil>}. Err :connection error: desc = "transport: Error while dialing dial tcp 192.168.5.63:8300: operation was canceled". Reconnecting...
2021-07-01T22:58:55.832+0200 [INFO]  agent.server: Handled event for server in area: event=member-join server=pi-rack1.dc1 area=wan
2021-07-01T22:58:55.834+0200 [INFO]  agent.server: Raft data found, disabling bootstrap mode
panic: unaligned 64-bit atomic operation

goroutine 70 [running]:
runtime/internal/atomic.panicUnaligned()
	/usr/local/go/src/runtime/internal/atomic/unaligned.go:8 +0x24
runtime/internal/atomic.Xadd64(0x4aa8064, 0x1, 0x0, 0x10, 0x4b41640)
	/usr/local/go/src/runtime/internal/atomic/asm_arm.s:233 +0x14
github.com/hashicorp/consul/agent/grpc.(*statsHandler).HandleConn(0x4aa8060, 0x2749ab4, 0x4bfae00, 0x272fb00, 0x4b193bc)
	/home/circleci/project/consul/agent/grpc/stats.go:96 +0x1a0
google.golang.org/grpc/internal/transport.newHTTP2Client(0x2749af4, 0x447ee80, 0x2749ab4, 0x44a7ec0, 0x49b0390, 0x11, 0x0, 0x0, 0x4e6a130, 0xc, ...)
	/go/pkg/mod/google.golang.org/grpc@v1.25.1/internal/transport/http2_client.go:281 +0x11bc
google.golang.org/grpc/internal/transport.NewClientTransport(...)
	/go/pkg/mod/google.golang.org/grpc@v1.25.1/internal/transport/transport.go:580
google.golang.org/grpc.(*addrConn).createTransport(0x4dd0c00, 0x49b0390, 0x11, 0x0, 0x4e6a130, 0xc, 0x0, 0x0, 0x2306a44, 0xe, ...)
	/go/pkg/mod/google.golang.org/grpc@v1.25.1/clientconn.go:1280 +0x2e8
google.golang.org/grpc.(*addrConn).tryAllAddrs(0x4dd0c00, 0x4bfaca0, 0x1, 0x1, 0xf1992a32, 0xc02fa908, 0xbb0b104d, 0x4, 0x3c65e80, 0xbb0b104d, ...)
	/go/pkg/mod/google.golang.org/grpc@v1.25.1/clientconn.go:1206 +0x150
google.golang.org/grpc.(*addrConn).resetTransport(0x4dd0c00)
	/go/pkg/mod/google.golang.org/grpc@v1.25.1/clientconn.go:1117 +0x1b8
created by google.golang.org/grpc.(*addrConn).connect
	/go/pkg/mod/google.golang.org/grpc@v1.25.1/clientconn.go:800 +0x98

@jsullivan3
Copy link

jsullivan3 commented Jul 2, 2021

I see the same behavior and backtrace on a Raspberry Pi 3B and on a Linksys WRT1200AC running OpenWRT 19.07.7 with a custom-compiled statically-linked consul binary.

(Update/Edit: the Raspberry Pi 3B is running the Hashicorp-published consul binary; the Linksys WRT1200AC is running a custom-compiled statically-linked consul binary. Both exhibit the same issue.)

@dnephin
Copy link
Contributor

dnephin commented Jul 5, 2021

Thank you for reporting this issue! I believe this is a duplicate of #10509 which was fixed in #10515 and will be released in v1.10.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants