{"action":"created","issue":{"url":"https://api.github.com/repos/libp2p/go-libp2p/issues/396","repository_url":"https://api.github.com/repos/libp2p/go-libp2p","labels_url":"https://api.github.com/repos/libp2p/go-libp2p/issues/396/labels{/name}","comments_url":"https://api.github.com/repos/libp2p/go-libp2p/issues/396/comments","events_url":"https://api.github.com/repos/libp2p/go-libp2p/issues/396/events","html_url":"https://github.com/libp2p/go-libp2p/issues/396","id":350759354,"node_id":"MDU6SXNzdWUzNTA3NTkzNTQ=","number":396,"title":"Yamux + secio data race","user":{"login":"hsanjuan","id":1027022,"node_id":"MDQ6VXNlcjEwMjcwMjI=","avatar_url":"https://avatars3.githubusercontent.com/u/1027022?v=4","gravatar_id":"","url":"https://api.github.com/users/hsanjuan","html_url":"https://github.com/hsanjuan","followers_url":"https://api.github.com/users/hsanjuan/followers","following_url":"https://api.github.com/users/hsanjuan/following{/other_user}","gists_url":"https://api.github.com/users/hsanjuan/gists{/gist_id}","starred_url":"https://api.github.com/users/hsanjuan/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hsanjuan/subscriptions","organizations_url":"https://api.github.com/users/hsanjuan/orgs","repos_url":"https://api.github.com/users/hsanjuan/repos","events_url":"https://api.github.com/users/hsanjuan/events{/privacy}","received_events_url":"https://api.github.com/users/hsanjuan/received_events","type":"User","site_admin":false},"labels":[{"id":267380872,"node_id":"MDU6TGFiZWwyNjczODA4NzI=","url":"https://api.github.com/repos/libp2p/go-libp2p/labels/bug","name":"bug","color":"fc2929","default":true}],"state":"open","locked":false,"assignee":{"login":"raulk","id":1101242,"node_id":"MDQ6VXNlcjExMDEyNDI=","avatar_url":"https://avatars0.githubusercontent.com/u/1101242?v=4","gravatar_id":"","url":"https://api.github.com/users/raulk","html_url":"https://github.com/raulk","followers_url":"https://api.github.com/users/raulk/followers","following_url":"https://api.github.com/users/raulk/following{/other_user}","gists_url":"https://api.github.com/users/raulk/gists{/gist_id}","starred_url":"https://api.github.com/users/raulk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raulk/subscriptions","organizations_url":"https://api.github.com/users/raulk/orgs","repos_url":"https://api.github.com/users/raulk/repos","events_url":"https://api.github.com/users/raulk/events{/privacy}","received_events_url":"https://api.github.com/users/raulk/received_events","type":"User","site_admin":false},"assignees":[{"login":"raulk","id":1101242,"node_id":"MDQ6VXNlcjExMDEyNDI=","avatar_url":"https://avatars0.githubusercontent.com/u/1101242?v=4","gravatar_id":"","url":"https://api.github.com/users/raulk","html_url":"https://github.com/raulk","followers_url":"https://api.github.com/users/raulk/followers","following_url":"https://api.github.com/users/raulk/following{/other_user}","gists_url":"https://api.github.com/users/raulk/gists{/gist_id}","starred_url":"https://api.github.com/users/raulk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raulk/subscriptions","organizations_url":"https://api.github.com/users/raulk/orgs","repos_url":"https://api.github.com/users/raulk/repos","events_url":"https://api.github.com/users/raulk/events{/privacy}","received_events_url":"https://api.github.com/users/raulk/received_events","type":"User","site_admin":false}],"milestone":null,"comments":9,"created_at":"2018-08-15T10:24:47Z","updated_at":"2018-09-10T17:01:06Z","closed_at":null,"author_association":"CONTRIBUTOR","body":"I have found a yamux + secio data race when running tests and I'm a bit lost with this one:\r\n\r\n```\r\n==================\r\nWARNING: DATA RACE\r\nWrite at 0x00c420d9eb5a by goroutine 310:\r\n  gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux.header.encode()\r\n      /usr/lib64/go/1.10/src/encoding/binary/binary.go:119 +0x1d9\r\n  gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux.(*Stream).sendReset()\r\n      /home/hector/go/src/gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux/stream.go:287 +0xe1\r\n  gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux.(*Stream).Reset()\r\n      /home/hector/go/src/gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux/stream.go:306 +0xac\r\n  gx/ipfs/QmdjC8HtKZpEufBL1u7WxvQn78Lqq2Wk31NJS8WvFX3crB/go-libp2p-swarm.(*Stream).Reset()\r\n      /home/hector/go/src/gx/ipfs/QmdjC8HtKZpEufBL1u7WxvQn78Lqq2Wk31NJS8WvFX3crB/go-libp2p-swarm/swarm_stream.go:111 +0x52\r\n  gx/ipfs/QmUDzeFgYrRmHL2hUB6NZmqcBVQtUzETwmFRUc9onfSSHr/go-libp2p/p2p/host/basic.(*BasicHost).newStreamHandler()\r\n      /home/hector/go/src/gx/ipfs/QmUDzeFgYrRmHL2hUB6NZmqcBVQtUzETwmFRUc9onfSSHr/go-libp2p/p2p/host/basic/basic_host.go:228 +0x353\r\n  gx/ipfs/QmUDzeFgYrRmHL2hUB6NZmqcBVQtUzETwmFRUc9onfSSHr/go-libp2p/p2p/host/basic.(*BasicHost).(gx/ipfs/QmUDzeFgYrRmHL2hUB6NZmqcBVQtUzETwmFRUc9onfSSHr/go-libp2p/p2p/host/basic.new\r\n      /home/hector/go/src/gx/ipfs/QmUDzeFgYrRmHL2hUB6NZmqcBVQtUzETwmFRUc9onfSSHr/go-libp2p/p2p/host/basic/basic_host.go:154 +0x55\r\n  gx/ipfs/QmdjC8HtKZpEufBL1u7WxvQn78Lqq2Wk31NJS8WvFX3crB/go-libp2p-swarm.(*Conn).start.func1.1()\r\n      /home/hector/go/src/gx/ipfs/QmdjC8HtKZpEufBL1u7WxvQn78Lqq2Wk31NJS8WvFX3crB/go-libp2p-swarm/swarm_conn.go:113 +0xec\r\n\r\nPrevious read at 0x00c420d9eb5a by goroutine 131:\r\n  crypto/cipher.fastXORBytes()\r\n      /usr/lib64/go/1.10/src/crypto/cipher/xor.go:39 +0x131\r\n  crypto/cipher.xorBytes()\r\n      /usr/lib64/go/1.10/src/crypto/cipher/xor.go:60 +0x9e\r\n  crypto/cipher.(*ctr).XORKeyStream()\r\n      /usr/lib64/go/1.10/src/crypto/cipher/ctr.go:78 +0x2a1\r\n  gx/ipfs/QmZ69yKFZ7V5hLCYFWzJF1Nz4dH1Es4LaE8jGXAFucLe3K/go-libp2p-secio.(*etmWriter).WriteMsg()\r\n      /home/hector/go/src/gx/ipfs/QmZ69yKFZ7V5hLCYFWzJF1Nz4dH1Es4LaE8jGXAFucLe3K/go-libp2p-secio/rw.go:49 +0x1da\r\n  gx/ipfs/QmZ69yKFZ7V5hLCYFWzJF1Nz4dH1Es4LaE8jGXAFucLe3K/go-libp2p-secio.(*etmWriter).Write()\r\n      /home/hector/go/src/gx/ipfs/QmZ69yKFZ7V5hLCYFWzJF1Nz4dH1Es4LaE8jGXAFucLe3K/go-libp2p-secio/rw.go:34 +0x5a\r\n  gx/ipfs/QmWBug6eBS7AxRdCDVuSY5CnSit7cS2XnPFYJWqWDumhCG/go-msgio.(*readWriter).Write()\r\n      <autogenerated>:1 +0x82\r\n  gx/ipfs/QmZ69yKFZ7V5hLCYFWzJF1Nz4dH1Es4LaE8jGXAFucLe3K/go-libp2p-secio.(*secureSession).Write()\r\n      <autogenerated>:1 +0x7d\r\n  gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux.(*Session).send()\r\n      /home/hector/go/src/gx/ipfs/QmZt87ZHYGaZFBrtGPEqYjAC2yNAhgiRDBmu8KaCzHjx6h/yamux/session.go:398 +0xf3\r\n```\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/libp2p/go-libp2p/issues/comments/419985742","html_url":"https://github.com/libp2p/go-libp2p/issues/396#issuecomment-419985742","issue_url":"https://api.github.com/repos/libp2p/go-libp2p/issues/396","id":419985742,"node_id":"MDEyOklzc3VlQ29tbWVudDQxOTk4NTc0Mg==","user":{"login":"raulk","id":1101242,"node_id":"MDQ6VXNlcjExMDEyNDI=","avatar_url":"https://avatars0.githubusercontent.com/u/1101242?v=4","gravatar_id":"","url":"https://api.github.com/users/raulk","html_url":"https://github.com/raulk","followers_url":"https://api.github.com/users/raulk/followers","following_url":"https://api.github.com/users/raulk/following{/other_user}","gists_url":"https://api.github.com/users/raulk/gists{/gist_id}","starred_url":"https://api.github.com/users/raulk/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/raulk/subscriptions","organizations_url":"https://api.github.com/users/raulk/orgs","repos_url":"https://api.github.com/users/raulk/repos","events_url":"https://api.github.com/users/raulk/events{/privacy}","received_events_url":"https://api.github.com/users/raulk/received_events","type":"User","site_admin":false},"created_at":"2018-09-10T17:01:06Z","updated_at":"2018-09-10T17:01:06Z","author_association":"CONTRIBUTOR","body":"Ok I think I might have misunderstood what conn.SetWriteDeadline does..."}}
{"actor":{"display_login":"raulk"}}