Skip to content

net: UDPConn.ReadFrom and UDPConn.WriteTo failing on Linux ARM device #7299

@gopherbot

Description

@gopherbot

by armon.dadgar:

This issue has cropped up from a bug report against Serf here:
hashicorp/serf#123

Serf seems to have no issues on other platforms, however on this Linux ARM
environment, it seems that UDP packets cannot be sent or received.

We ran it under strace, and collected a the relevant sample, available here:
https://www.dropbox.com/s/bvfv4zjtmnqr12o/serf.stderr.output

It seems that `recvfrom` is always failing with EFAULT preventing packets from
being received. Similarly `sendto` is failing with EINVAL preventing packets
from being sent.

User is reporting the master build of Serf on ARM can reproduce the problem.

What steps will reproduce the problem?
1. Run a Serf agent on ARM "serf agent"
2. Run another Serf agent
3. Join the agents "serf join <agent1>"
4. Error messages about failed packet send/receive will appear

What is the expected output?
No error messages

What do you see instead?
2014/02/08 13:24:36 [ERR] memberlist: Failed to send gossip to 192.168.2.1:7946: write
udp: invalid argument
2014/02/08 13:24:36 [ERR] memberlist: Error reading UDP packet: read udp
192.168.2.2:7946: bad address

Which operating system are you using?
Linux version 2.6.12.6-arm1 (root@NasARM4) (gcc version 3.4.4 (release) (CodeSourcery
ARM 2005q3-2)) #2 Sun Sep 18 02:09:29 CST 2011 

Which version are you using?  (run 'go version')
go version go1.2 darwin/amd64

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions