fatedier / frp

A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
Apache License 2.0
85.61k stars 13.26k forks source link

netpoll_epoll.go 出现core dump #3506

Closed sundp123 closed 1 year ago

sundp123 commented 1 year ago

Bug Description

  1. ./frps -c ./frps.conf 运行正常
  2. ./frpc -c ./frpc.conf 运行正正常
  3. ssh frpsip+port 10.xx.50.10 10170 执行后, ./frpc -c ./frpc.conf 出现 异常退出

以下是具体的执行异常信息

./frpc -c ./frpc.conf

2023/06/29 16:30:41 [I] [service.go:357] [86cdd90ee1120902] login to server success, get run id [86cdd90ee1120902], server udp port [0] 2023/06/29 16:30:41 [I] [proxy_manager.go:142] [86cdd90ee1120902] proxy added: [1801090901_332] 2023/06/29 16:30:41 [I] [control.go:177] [86cdd90ee1120902] [1801090901_332] start proxy success

fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violation code=0x1 addr=0x98a5800000000 pc=0x438384]

runtime stack: runtime.throw({0x986bea?, 0x0?}) runtime/panic.go:1047 +0x40 fp=0xffff5c8c9f10 sp=0xffff5c8c9ee0 pc=0x43bf90 runtime.sigpanic() runtime/signal_unix.go:819 +0x1e4 fp=0xffff5c8c9f40 sp=0xffff5c8c9f10 pc=0x453534 runtime.(*pollDesc).setEventErr(...) runtime/netpoll.go:162 runtime.netpoll(0x2accc20) runtime/netpoll_epoll.go:171 +0x214 fp=0xffff5c8ca7b0 sp=0xffff5c8c9f50 pc=0x438384 runtime.findRunnable() runtime/proc.go:2837 +0x758 fp=0xffff5c8ca8a0 sp=0xffff5c8ca7b0 pc=0x444138 runtime.schedule() runtime/proc.go:3214 +0xa8 fp=0xffff5c8ca8e0 sp=0xffff5c8ca8a0 pc=0x4454b8 runtime.park_m(0x400039fa00?) runtime/proc.go:3363 +0x140 fp=0xffff5c8ca910 sp=0xffff5c8ca8e0 pc=0x445a10 runtime.mcall() runtime/asm_arm64.s:192 +0x54 fp=0xffff5c8ca920 sp=0xffff5c8ca910 pc=0x46d374

frpc Version

0.45.0

frps Version

0.45.0

System Architecture

linux/arm64

Configurations

makefile的修改 env GOOS=linux GOARCH=arm64 CGO_ENABLED=1 CC="aarch64-unknown-linux-gnu-gcc --sysroot=/home/xxx/arm64-glibc-cross-linux4.4-v504 -I/xxx/include//" CXX=aarch64-unknown-linux-gnu-g++ AR=aarch64-unknown-linux-gnu-ar go build -trimpath -ldflags "$(LDFLAGS)" -o bin/frpc ./cmd/frpc cat frpc.conf [common] server_addr = 10.xx.50.10

server_port = 7000

type = tcp local_ip = 10.xx.100.2 local_port = 20022 remote_port = 10170

[root@cpe ~]# cat ./frps.conf [common] bind_port = 7000

./frps -c ./frps.conf ./frpc -c ./frpc.conf

Logs

./frpc -c ./frpc.conf

2023/06/29 16:30:41 [I] [service.go:357] [86cdd90ee1120902] login to server success, get run id [86cdd90ee1120902], server udp port [0] 2023/06/29 16:30:41 [I] [proxy_manager.go:142] [86cdd90ee1120902] proxy added: [1801090901_332] 2023/06/29 16:30:41 [I] [control.go:177] [86cdd90ee1120902] [1801090901_332] start proxy success

fatal error: unexpected signal during runtime execution [signal SIGSEGV: segmentation violation code=0x1 addr=0x98a5800000000 pc=0x438384]

runtime stack: runtime.throw({0x986bea?, 0x0?}) runtime/panic.go:1047 +0x40 fp=0xffff5c8c9f10 sp=0xffff5c8c9ee0 pc=0x43bf90 runtime.sigpanic() runtime/signal_unix.go:819 +0x1e4 fp=0xffff5c8c9f40 sp=0xffff5c8c9f10 pc=0x453534 runtime.(*pollDesc).setEventErr(...) runtime/netpoll.go:162 runtime.netpoll(0x2accc20) runtime/netpoll_epoll.go:171 +0x214 fp=0xffff5c8ca7b0 sp=0xffff5c8c9f50 pc=0x438384 runtime.findRunnable() runtime/proc.go:2837 +0x758 fp=0xffff5c8ca8a0 sp=0xffff5c8ca7b0 pc=0x444138 runtime.schedule() runtime/proc.go:3214 +0xa8 fp=0xffff5c8ca8e0 sp=0xffff5c8ca8a0 pc=0x4454b8 runtime.park_m(0x400039fa00?) runtime/proc.go:3363 +0x140 fp=0xffff5c8ca910 sp=0xffff5c8ca8e0 pc=0x445a10 runtime.mcall() runtime/asm_arm64.s:192 +0x54 fp=0xffff5c8ca920 sp=0xffff5c8ca910 pc=0x46d374

goroutine 1 [chan receive]: runtime.gopark(0x4000236da8?, 0x4a50e0?, 0xd8?, 0x78?, 0x8b0820?) runtime/proc.go:363 +0xe4 fp=0x4000236d10 sp=0x4000236cf0 pc=0x43e9f4 runtime.chanrecv(0x4000075860, 0x0, 0x1) runtime/chan.go:583 +0x47c fp=0x4000236da0 sp=0x4000236d10 pc=0x40b4cc runtime.chanrecv1(0x4000342918?, 0x5?) runtime/chan.go:442 +0x14 fp=0x4000236dd0 sp=0x4000236da0 pc=0x40b014 github.com/fatedier/frp/client.(Service).Run(0x4000342900) github.com/fatedier/frp/client/service.go:164 +0x60c fp=0x4000237380 sp=0x4000236dd0 pc=0x85c28c github.com/fatedier/frp/cmd/frpc/sub.startService({{{{0x96ccad, 0x5}, 0x0, 0x0}, {{0xb191a0, 0x0}, {0xb191a0, 0x0}, {0xb191a0, 0x0}, ...}, ...}, ...}, ...) github.com/fatedier/frp/cmd/frpc/sub/root.go:225 +0x244 fp=0x4000237650 sp=0x4000237380 pc=0x8672b4 github.com/fatedier/frp/cmd/frpc/sub.runClient({0xfffff695ef09, 0xb}) github.com/fatedier/frp/cmd/frpc/sub/root.go:197 +0xd8 fp=0x4000237d30 sp=0x4000237650 pc=0x867048 github.com/fatedier/frp/cmd/frpc/sub.glob..func4(0xe2b4e0?, {0x968bd1?, 0x2?, 0x2?}) github.com/fatedier/frp/cmd/frpc/sub/root.go:133 +0x54 fp=0x4000237da0 sp=0x4000237d30 pc=0x866704 github.com/spf13/cobra.(Command).execute(0xe2b4e0, {0x4000020190, 0x2, 0x2}) github.com/spf13/cobra@v1.1.3/command.go:852 +0x4dc fp=0x4000237e80 sp=0x4000237da0 pc=0x71ca9c github.com/spf13/cobra.(Command).ExecuteC(0xe2b4e0) github.com/spf13/cobra@v1.1.3/command.go:960 +0x358 fp=0x4000237f40 sp=0x4000237e80 pc=0x71cff8 github.com/spf13/cobra.(Command).Execute(...) github.com/spf13/cobra@v1.1.3/command.go:897 github.com/fatedier/frp/cmd/frpc/sub.Execute() github.com/fatedier/frp/cmd/frpc/sub/root.go:143 +0x28 fp=0x4000237f60 sp=0x4000237f40 pc=0x866b18 main.main() github.com/fatedier/frp/cmd/frpc/main.go:23 +0x1c fp=0x4000237f70 sp=0x4000237f60 pc=0x86c47c runtime.main() runtime/proc.go:250 +0x254 fp=0x4000237fd0 sp=0x4000237f70 pc=0x43e624 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x4000237fd0 sp=0x4000237fd0 pc=0x46f9e4

goroutine 2 [force gc (idle)]: runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?) runtime/proc.go:363 +0xe4 fp=0x400003afa0 sp=0x400003af80 pc=0x43e9f4 runtime.goparkunlock(...) runtime/proc.go:369 runtime.forcegchelper() runtime/proc.go:302 +0xb4 fp=0x400003afd0 sp=0x400003afa0 pc=0x43e884 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003afd0 sp=0x400003afd0 pc=0x46f9e4 created by runtime.init.6 runtime/proc.go:290 +0x24

goroutine 3 [GC sweep wait]: runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?) runtime/proc.go:363 +0xe4 fp=0x400003b770 sp=0x400003b750 pc=0x43e9f4 runtime.goparkunlock(...) runtime/proc.go:369 runtime.bgsweep(0x0?) runtime/mgcsweep.go:278 +0xa4 fp=0x400003b7b0 sp=0x400003b770 pc=0x4298f4 runtime.gcenable.func1() runtime/mgc.go:178 +0x28 fp=0x400003b7d0 sp=0x400003b7b0 pc=0x41dd48 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003b7d0 sp=0x400003b7d0 pc=0x46f9e4 created by runtime.gcenable runtime/mgc.go:178 +0x70

goroutine 4 [GC scavenge wait]: runtime.gopark(0x400005c000?, 0xb191b8?, 0x1?, 0x0?, 0x0?) runtime/proc.go:363 +0xe4 fp=0x400003bf50 sp=0x400003bf30 pc=0x43e9f4 runtime.goparkunlock(...) runtime/proc.go:369 runtime.(*scavengerState).park(0xe825a0) runtime/mgcscavenge.go:389 +0x5c fp=0x400003bf80 sp=0x400003bf50 pc=0x4278dc runtime.bgscavenge(0x0?) runtime/mgcscavenge.go:617 +0x44 fp=0x400003bfb0 sp=0x400003bf80 pc=0x427e44 runtime.gcenable.func2() runtime/mgc.go:179 +0x28 fp=0x400003bfd0 sp=0x400003bfb0 pc=0x41dce8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003bfd0 sp=0x400003bfd0 pc=0x46f9e4 created by runtime.gcenable runtime/mgc.go:179 +0xb4

goroutine 5 [finalizer wait]: runtime.gopark(0x60000000000000?, 0x0?, 0x8?, 0xd1?, 0x2000000000?) runtime/proc.go:363 +0xe4 fp=0x400003a580 sp=0x400003a560 pc=0x43e9f4 runtime.goparkunlock(...) runtime/proc.go:369 runtime.runfinq() runtime/mfinal.go:180 +0x128 fp=0x400003a7d0 sp=0x400003a580 pc=0x41cee8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003a7d0 sp=0x400003a7d0 pc=0x46f9e4 created by runtime.createfing runtime/mfinal.go:157 +0x94

goroutine 6 [select]: runtime.gopark(0x400003c788?, 0x2?, 0x38?, 0xc6?, 0x400003c764?) runtime/proc.go:363 +0xe4 fp=0x400003c600 sp=0x400003c5e0 pc=0x43e9f4 runtime.selectgo(0x400003c788, 0x400003c760, 0x0?, 0x0, 0x0?, 0x1) runtime/select.go:328 +0x6b4 fp=0x400003c710 sp=0x400003c600 pc=0x44f5d4 github.com/fatedier/kcp-go.(*updateHeap).updateTask(0xe81ce0) github.com/fatedier/kcp-go@v2.0.4-0.20190803094908-fe8645b0a904+incompatible/updater.go:81 +0x6c fp=0x400003c7b0 sp=0x400003c710 pc=0x817e8c github.com/fatedier/kcp-go.init.2.func1() github.com/fatedier/kcp-go@v2.0.4-0.20190803094908-fe8645b0a904+incompatible/updater.go:13 +0x28 fp=0x400003c7d0 sp=0x400003c7b0 pc=0x817668 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003c7d0 sp=0x400003c7d0 pc=0x46f9e4 created by github.com/fatedier/kcp-go.init.2 github.com/fatedier/kcp-go@v2.0.4-0.20190803094908-fe8645b0a904+incompatible/updater.go:13 +0x80

goroutine 8 [runnable]: syscall.Syscall(0x400004dae8?, 0x4e0e74?, 0x800000?, 0x7ffff800000?) syscall/syscall_linux.go:68 +0x20 fp=0x400004dab0 sp=0x400004da40 pc=0x483dd0 syscall.read(0x4000384a80?, {0x40003a6000?, 0x400004db00?, 0x4663f8?}) syscall/zsyscall_linux_arm64.go:696 +0x40 fp=0x400004daf0 sp=0x400004dab0 pc=0x481aa0 syscall.Read(...) syscall/syscall_unix.go:183 internal/poll.ignoringEINTRIO(...) internal/poll/fd_unix.go:794 internal/poll.(FD).Read(0x4000384a80?, {0x40003a6000?, 0x1000?, 0x1000?}) internal/poll/fd_unix.go:163 +0x20c fp=0x400004db70 sp=0x400004daf0 pc=0x4e0fac net.(netFD).Read(0x4000384a80, {0x40003a6000?, 0x400004dbe8?, 0x0?}) net/fd_posix.go:55 +0x28 fp=0x400004dbc0 sp=0x400004db70 pc=0x5a67a8 net.(conn).Read(0x40000108d0, {0x40003a6000?, 0x3f?, 0x3?}) net/net.go:183 +0x34 fp=0x400004dc10 sp=0x400004dbc0 pc=0x5b9924 bufio.(Reader).Read(0x4000060c00, {0x4000390800, 0x400, 0x0?}) bufio/bufio.go:237 +0x1e8 fp=0x400004dc50 sp=0x400004dc10 pc=0x633398 io.(LimitedReader).Read(0x400000ea80, {0x4000390800?, 0x400004dcb8?, 0x836f58?}) io/io.go:477 +0x50 fp=0x400004dc80 sp=0x400004dc50 pc=0x47a150 bytes.(Buffer).ReadFrom(0x400039d230, {0xb1b740, 0x400000ea80}) bytes/buffer.go:202 +0x90 fp=0x400004dce0 sp=0x400004dc80 pc=0x4b51e0 io.copyBuffer({0xb1b040, 0x400039d230}, {0xb1b740, 0x400000ea80}, {0x0, 0x0, 0x0}) io/io.go:413 +0x108 fp=0x400004dd70 sp=0x400004dce0 pc=0x479f28 io.Copy(...) io/io.go:386 github.com/hashicorp/yamux.(Stream).readData(0x400039b040, {0x4000369330, 0x4000000003?, 0xc}, 0xe340?, {0xb1afc0?, 0x4000060c00}) github.com/hashicorp/yamux@v0.1.1/stream.go:494 +0x1ec fp=0x400004de40 sp=0x400004dd70 pc=0x83737c github.com/hashicorp/yamux.(Session).handleStreamMessage(0x40002c9c80, {0x4000369330, 0xc, 0xc}) github.com/hashicorp/yamux@v0.1.1/session.go:603 +0x2bc fp=0x400004dee0 sp=0x400004de40 pc=0x83398c github.com/hashicorp/yamux.(Session).recvLoop(0x40002c9c80) github.com/hashicorp/yamux@v0.1.1/session.go:554 +0xfc fp=0x400004df80 sp=0x400004dee0 pc=0x8333fc github.com/hashicorp/yamux.(Session).recv(0x40000dc870?) github.com/hashicorp/yamux@v0.1.1/session.go:515 +0x20 fp=0x400004dfb0 sp=0x400004df80 pc=0x8332c0 github.com/hashicorp/yamux.newSession.func1() github.com/hashicorp/yamux@v0.1.1/session.go:118 +0x28 fp=0x400004dfd0 sp=0x400004dfb0 pc=0x830ca8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400004dfd0 sp=0x400004dfd0 pc=0x46f9e4 created by github.com/hashicorp/yamux.newSession github.com/hashicorp/yamux@v0.1.1/session.go:118 +0x440

goroutine 9 [select]: runtime.gopark(0x400004bf28?, 0x2?, 0xa8?, 0xbd?, 0x400004bebc?) runtime/proc.go:363 +0xe4 fp=0x400004bd60 sp=0x400004bd40 pc=0x43e9f4 runtime.selectgo(0x400004bf28, 0x400004beb8, 0x1d0?, 0x0, 0x0?, 0x1) runtime/select.go:328 +0x6b4 fp=0x400004be70 sp=0x400004bd60 pc=0x44f5d4 github.com/hashicorp/yamux.(Session).sendLoop(0x40002c9c80) github.com/hashicorp/yamux@v0.1.1/session.go:467 +0xb8 fp=0x400004bf80 sp=0x400004be70 pc=0x832d38 github.com/hashicorp/yamux.(Session).send(0x0?) github.com/hashicorp/yamux@v0.1.1/session.go:456 +0x20 fp=0x400004bfb0 sp=0x400004bf80 pc=0x832c40 github.com/hashicorp/yamux.newSession.func2() github.com/hashicorp/yamux@v0.1.1/session.go:119 +0x28 fp=0x400004bfd0 sp=0x400004bfb0 pc=0x830c48 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400004bfd0 sp=0x400004bfd0 pc=0x46f9e4 created by github.com/hashicorp/yamux.newSession github.com/hashicorp/yamux@v0.1.1/session.go:119 +0x484

goroutine 10 [select]: runtime.gopark(0x400003df88?, 0x2?, 0x48?, 0xde?, 0x400003df6c?) runtime/proc.go:363 +0xe4 fp=0x400003de10 sp=0x400003ddf0 pc=0x43e9f4 runtime.selectgo(0x400003df88, 0x400003df68, 0x0?, 0x0, 0x0?, 0x1) runtime/select.go:328 +0x6b4 fp=0x400003df20 sp=0x400003de10 pc=0x44f5d4 github.com/hashicorp/yamux.(*Session).keepalive(0x40002c9c80) github.com/hashicorp/yamux@v0.1.1/session.go:349 +0x70 fp=0x400003dfb0 sp=0x400003df20 pc=0x832160 github.com/hashicorp/yamux.newSession.func3() github.com/hashicorp/yamux@v0.1.1/session.go:121 +0x28 fp=0x400003dfd0 sp=0x400003dfb0 pc=0x830be8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003dfd0 sp=0x400003dfd0 pc=0x46f9e4 created by github.com/hashicorp/yamux.newSession github.com/hashicorp/yamux@v0.1.1/session.go:121 +0x4d4

goroutine 12 [chan receive]: runtime.gopark(0x40000366e8?, 0x8313d0?, 0x48?, 0x67?, 0x411e0c?) runtime/proc.go:363 +0xe4 fp=0x40000366c0 sp=0x40000366a0 pc=0x43e9f4 runtime.chanrecv(0x40000753e0, 0x0, 0x1) runtime/chan.go:583 +0x47c fp=0x4000036750 sp=0x40000366c0 pc=0x40b4cc runtime.chanrecv1(0x0?, 0x46f9e8?) runtime/chan.go:442 +0x14 fp=0x4000036780 sp=0x4000036750 pc=0x40b014 github.com/fatedier/frp/client.(Control).worker(0x4000342c00) github.com/fatedier/frp/client/control.go:399 +0xf8 fp=0x40000367b0 sp=0x4000036780 pc=0x85b6a8 github.com/fatedier/frp/client.(Control).Run.func1() github.com/fatedier/frp/client/control.go:124 +0x28 fp=0x40000367d0 sp=0x40000367b0 pc=0x858dd8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x40000367d0 sp=0x40000367d0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(*Control).Run github.com/fatedier/frp/client/control.go:124 +0x60

goroutine 13 [select]: runtime.gopark(0x400003cf78?, 0x3?, 0xb8?, 0xcd?, 0x400003cef2?) runtime/proc.go:363 +0xe4 fp=0x400003cd80 sp=0x400003cd60 pc=0x43e9f4 runtime.selectgo(0x400003cf78, 0x400003ceec, 0x40002c9ce0?, 0x0, 0xc?, 0x1) runtime/select.go:328 +0x6b4 fp=0x400003ce90 sp=0x400003cd80 pc=0x44f5d4 github.com/fatedier/frp/client/proxy.(Wrapper).checkWorker(0x4000395200) github.com/fatedier/frp/client/proxy/proxy_wrapper.go:192 +0x61c fp=0x400003cfb0 sp=0x400003ce90 pc=0x85398c github.com/fatedier/frp/client/proxy.(Wrapper).Start.func1() github.com/fatedier/frp/client/proxy/proxy_wrapper.go:128 +0x28 fp=0x400003cfd0 sp=0x400003cfb0 pc=0x853138 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400003cfd0 sp=0x400003cfd0 pc=0x46f9e4 created by github.com/fatedier/frp/client/proxy.(*Wrapper).Start github.com/fatedier/frp/client/proxy/proxy_wrapper.go:128 +0x60

goroutine 14 [select]: runtime.gopark(0x4000036f20?, 0x2?, 0xa8?, 0x6d?, 0x4000036ebc?) runtime/proc.go:363 +0xe4 fp=0x4000036d50 sp=0x4000036d30 pc=0x43e9f4 runtime.selectgo(0x4000036f20, 0x4000036eb8, 0x0?, 0x0, 0x0?, 0x1) runtime/select.go:328 +0x6b4 fp=0x4000036e60 sp=0x4000036d50 pc=0x44f5d4 github.com/fatedier/frp/client.(VisitorManager).Run(0x40003279c0) github.com/fatedier/frp/client/visitor_manager.go:58 +0xb8 fp=0x4000036fb0 sp=0x4000036e60 pc=0x8628c8 github.com/fatedier/frp/client.(Control).Run.func2() github.com/fatedier/frp/client/control.go:130 +0x28 fp=0x4000036fd0 sp=0x4000036fb0 pc=0x858d78 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x4000036fd0 sp=0x4000036fd0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(*Control).Run github.com/fatedier/frp/client/control.go:130 +0xc4

goroutine 15 [chan receive]: runtime.gopark(0x400004e9a8?, 0x4a4968?, 0x0?, 0x0?, 0x0?) runtime/proc.go:363 +0xe4 fp=0x400004e960 sp=0x400004e940 pc=0x43e9f4 runtime.chanrecv(0x4000075440, 0x0, 0x1) runtime/chan.go:583 +0x47c fp=0x400004e9f0 sp=0x400004e960 pc=0x40b4cc runtime.chanrecv1(0xc11f6e3b42b469a8?, 0xdfa231129?) runtime/chan.go:442 +0x14 fp=0x400004ea20 sp=0x400004e9f0 pc=0x40b014 github.com/fatedier/frp/client.(Service).keepControllerWorking(0x4000342900) github.com/fatedier/frp/client/service.go:181 +0xa4 fp=0x400004efb0 sp=0x400004ea20 pc=0x85c414 github.com/fatedier/frp/client.(Service).Run.func2() github.com/fatedier/frp/client/service.go:151 +0x28 fp=0x400004efd0 sp=0x400004efb0 pc=0x85c2e8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400004efd0 sp=0x400004efd0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(*Service).Run github.com/fatedier/frp/client/service.go:151 +0x348

goroutine 16 [select]: runtime.gopark(0x400004ff78?, 0x3?, 0x6b?, 0x89?, 0x400004fd6a?) runtime/proc.go:363 +0xe4 fp=0x400004fc10 sp=0x400004fbf0 pc=0x43e9f4 runtime.selectgo(0x400004ff78, 0x400004fd64, 0x0?, 0x0, 0x0?, 0x1) runtime/select.go:328 +0x6b4 fp=0x400004fd20 sp=0x400004fc10 pc=0x44f5d4 github.com/fatedier/frp/client.(Control).msgHandler(0x4000342c00) github.com/fatedier/frp/client/control.go:353 +0x260 fp=0x400004ffb0 sp=0x400004fd20 pc=0x85ae40 github.com/fatedier/frp/client.(Control).worker.func1() github.com/fatedier/frp/client/control.go:395 +0x28 fp=0x400004ffd0 sp=0x400004ffb0 pc=0x85b838 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400004ffd0 sp=0x400004ffd0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(*Control).worker github.com/fatedier/frp/client/control.go:395 +0x60

goroutine 18 [select]: runtime.gopark(0x400008bce0?, 0x2?, 0x0?, 0x0?, 0x400008bc5c?) runtime/proc.go:363 +0xe4 fp=0x400008baf0 sp=0x400008bad0 pc=0x43e9f4 runtime.selectgo(0x400008bce0, 0x400008bc58, 0x0?, 0x0, 0x400008bc88?, 0x1) runtime/select.go:328 +0x6b4 fp=0x400008bc00 sp=0x400008baf0 pc=0x44f5d4 github.com/hashicorp/yamux.(Stream).Read(0x400039aa90, {0x4000369e90, 0x1, 0x4000369e80?}) github.com/hashicorp/yamux@v0.1.1/stream.go:145 +0x47c fp=0x400008bd10 sp=0x400008bc00 pc=0x834fac crypto/cipher.StreamReader.Read({{0xb1b100?, 0x40003a45f0?}, {0xffff5b09a3f8?, 0x400039aa90?}}, {0x4000369e90, 0x7654b8?, 0x1}) crypto/cipher/io.go:20 +0x50 fp=0x400008bd80 sp=0x400008bd10 pc=0x4dc2b0 github.com/fatedier/golib/crypto.(Reader).Read(0x40000618c0, {0x4000369e90?, 0x3?, 0x2?}) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/crypto/decode.go:70 +0x1a8 fp=0x400008bde0 sp=0x400008bd80 pc=0x82e678 github.com/fatedier/golib/msg/json.(MsgCtl).readMsg(0x400000e150, {0xb1b420, 0x40000618c0}) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/msg/json/process.go:32 +0x58 fp=0x400008be40 sp=0x400008bde0 pc=0x7654d8 github.com/fatedier/golib/msg/json.(MsgCtl).ReadMsg(0xeb2f00?, {0xb1b420?, 0x40000618c0?}) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/msg/json/process.go:68 +0x28 fp=0x400008be90 sp=0x400008be40 pc=0x765748 github.com/fatedier/frp/pkg/msg.ReadMsg(...) github.com/fatedier/frp/pkg/msg/ctl.go:35 github.com/fatedier/frp/client.(Control).reader(0x4000342c00) github.com/fatedier/frp/client/control.go:285 +0x208 fp=0x400008bfb0 sp=0x400008be90 pc=0x85a4c8 github.com/fatedier/frp/client.(Control).worker.func2() github.com/fatedier/frp/client/control.go:396 +0x28 fp=0x400008bfd0 sp=0x400008bfb0 pc=0x85b7d8 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400008bfd0 sp=0x400008bfd0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(*Control).worker github.com/fatedier/frp/client/control.go:396 +0xa4

goroutine 19 [chan receive]: runtime.gopark(0xb1b100?, 0x40003a44b0?, 0xd8?, 0xa3?, 0x400039aa90?) runtime/proc.go:363 +0xe4 fp=0x4000089e10 sp=0x4000089df0 pc=0x43e9f4 runtime.chanrecv(0x4000061380, 0x4000089f90, 0x1) runtime/chan.go:583 +0x47c fp=0x4000089ea0 sp=0x4000089e10 pc=0x40b4cc runtime.chanrecv2(0xffff5b09a3d8?, 0xb1b440?) runtime/chan.go:447 +0x14 fp=0x4000089ed0 sp=0x4000089ea0 pc=0x40b034 github.com/fatedier/frp/client.(Control).writer(0x4000342c00) github.com/fatedier/frp/client/control.go:310 +0x168 fp=0x4000089fb0 sp=0x4000089ed0 pc=0x85aa18 github.com/fatedier/frp/client.(Control).worker.func3() github.com/fatedier/frp/client/control.go:397 +0x28 fp=0x4000089fd0 sp=0x4000089fb0 pc=0x85b778 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x4000089fd0 sp=0x4000089fd0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(*Control).worker github.com/fatedier/frp/client/control.go:397 +0xe8

goroutine 25 [semacquire]: runtime.gopark(0xe8abc0?, 0xf?, 0x0?, 0x1e?, 0x32?) runtime/proc.go:363 +0xe4 fp=0x4000049a60 sp=0x4000049a40 pc=0x43e9f4 runtime.goparkunlock(...) runtime/proc.go:369 runtime.semacquire1(0x400039b074, 0xb0?, 0x3, 0x1) runtime/sema.go:150 +0x20c fp=0x4000049ac0 sp=0x4000049a60 pc=0x4504fc sync.runtime_SemacquireMutex(0x4000049b18?, 0x88?, 0x32?) runtime/sema.go:77 +0x24 fp=0x4000049af0 sp=0x4000049ac0 pc=0x46b744 sync.(Mutex).lockSlow(0x400039b070) sync/mutex.go:171 +0x178 fp=0x4000049b40 sp=0x4000049af0 pc=0x4777d8 sync.(Mutex).Lock(...) sync/mutex.go:90 github.com/hashicorp/yamux.(Stream).Read(0x400039b040, {0x40003b8000, 0x8000, 0x10?}) github.com/hashicorp/yamux@v0.1.1/stream.go:119 +0x2dc fp=0x4000049c50 sp=0x4000049b40 pc=0x834e0c io.copyBuffer({0xb1c8c0, 0x40003a8240}, {0xffff5b09a3f8, 0x400039b040}, {0x0, 0x0, 0x0}) io/io.go:427 +0x168 fp=0x4000049ce0 sp=0x4000049c50 pc=0x479f88 io.Copy(...) io/io.go:386 net.genericReadFrom({0xb1b940?, 0x40000109d0?}, {0xffff5b09a3f8, 0x400039b040}) net/net.go:675 +0x68 fp=0x4000049d40 sp=0x4000049ce0 pc=0x5bafb8 net.(TCPConn).readFrom(0x40000109d0, {0xffff5b09a3f8, 0x400039b040}) net/tcpsock_posix.go:54 +0x70 fp=0x4000049d70 sp=0x4000049d40 pc=0x5c1f00 net.(*TCPConn).ReadFrom(0x40000109d0, {0xffff5b09a3f8?, 0x400039b040?}) net/tcpsock.go:130 +0x30 fp=0x4000049db0 sp=0x4000049d70 pc=0x5c0960 io.copyBuffer({0xb1b940, 0x40000109d0}, {0xffff5b09a3f8, 0x400039b040}, {0x40003b4000, 0x4000, 0x4000}) io/io.go:413 +0x108 fp=0x4000049e40 sp=0x4000049db0 pc=0x479f28 io.CopyBuffer({0xb1b940?, 0x40000109d0?}, {0xffff5b09a3f8?, 0x400039b040?}, {0x40003b4000?, 0x0?, 0x4000037708?}) io/io.go:400 +0x38 fp=0x4000049e90 sp=0x4000049e40 pc=0x479db8 github.com/fatedier/golib/io.Join.func1({0xffff5b098b88?, 0x40000109d0}, {0xffff5b09a618?, 0x400039b040}, 0x40003ac0c0) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:35 +0x16c fp=0x4000049f90 sp=0x4000049e90 pc=0x82f08c github.com/fatedier/golib/io.Join.func2() github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:39 +0x40 fp=0x4000049fd0 sp=0x4000049f90 pc=0x82eee0 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x4000049fd0 sp=0x4000049fd0 pc=0x46f9e4 created by github.com/fatedier/golib/io.Join github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:39 +0x174

goroutine 22 [select]: runtime.gopark(0x4000048e00?, 0x2?, 0x8?, 0xd1?, 0x4000048d7c?) runtime/proc.go:363 +0xe4 fp=0x4000048c10 sp=0x4000048bf0 pc=0x43e9f4 runtime.selectgo(0x4000048e00, 0x4000048d78, 0x0?, 0x0, 0x4000048e28?, 0x1) runtime/select.go:328 +0x6b4 fp=0x4000048d20 sp=0x4000048c10 pc=0x44f5d4 github.com/hashicorp/yamux.(Stream).Read(0x400039b380, {0x4000369eb8, 0x1, 0x50?}) github.com/hashicorp/yamux@v0.1.1/stream.go:145 +0x47c fp=0x4000048e30 sp=0x4000048d20 pc=0x834fac github.com/fatedier/golib/msg/json.(MsgCtl).readMsg(0x400000e150, {0xffff5b09a3f8, 0x400039b380}) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/msg/json/process.go:32 +0x58 fp=0x4000048e90 sp=0x4000048e30 pc=0x7654d8 github.com/fatedier/golib/msg/json.(MsgCtl).ReadMsgInto(0x4000037fa8?, {0xffff5b09a3f8?, 0x400039b380?}, {0x8a25e0, 0x40003a4730}) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/msg/json/process.go:76 +0x30 fp=0x4000048ee0 sp=0x4000048e90 pc=0x7657f0 github.com/fatedier/frp/pkg/msg.ReadMsgInto(...) github.com/fatedier/frp/pkg/msg/ctl.go:39 github.com/fatedier/frp/client.(Control).HandleReqWorkConn(0x4000342c00, 0x400039b040?) github.com/fatedier/frp/client/control.go:154 +0x230 fp=0x4000048fb0 sp=0x4000048ee0 pc=0x859040 github.com/fatedier/frp/client.(Control).msgHandler.func5() github.com/fatedier/frp/client/control.go:377 +0x2c fp=0x4000048fd0 sp=0x4000048fb0 pc=0x85b31c runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x4000048fd0 sp=0x4000048fd0 pc=0x46f9e4 created by github.com/fatedier/frp/client.(Control).msgHandler github.com/fatedier/frp/client/control.go:377 +0x404

goroutine 24 [semacquire]: runtime.gopark(0xe89ac0?, 0x411e0c?, 0x40?, 0x1a?, 0x40?) runtime/proc.go:363 +0xe4 fp=0x4000085b90 sp=0x4000085b70 pc=0x43e9f4 runtime.goparkunlock(...) runtime/proc.go:369 runtime.semacquire1(0x40003ac0d8, 0xcc?, 0x1, 0x0) runtime/sema.go:150 +0x20c fp=0x4000085bf0 sp=0x4000085b90 pc=0x4504fc sync.runtime_Semacquire(0x400039fd40?) runtime/sema.go:62 +0x28 fp=0x4000085c20 sp=0x4000085bf0 pc=0x46b658 sync.(WaitGroup).Wait(0x40003ac0d0) sync/waitgroup.go:139 +0x80 fp=0x4000085c40 sp=0x4000085c20 pc=0x479680 github.com/fatedier/golib/io.Join({0xffff5b098b88?, 0x40000109d0}, {0xffff5b09a618?, 0x400039b040}) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:41 +0x234 fp=0x4000085ca0 sp=0x4000085c40 pc=0x82edd4 github.com/fatedier/frp/client/proxy.HandleTCPWorkConnection({0xb1fd20?, 0x400039cdb0?}, 0x4000395178, {0x0, 0x0}, 0x4000395100, 0x0, {0xb226d0?, 0x400039b040}, {0xeb2f00, ...}, ...) github.com/fatedier/frp/client/proxy/proxy.go:818 +0x920 fp=0x4000085f10 sp=0x4000085ca0 pc=0x851100 github.com/fatedier/frp/client/proxy.(TCPProxy).InWorkConn(0x400038e400, {0xb226d0, 0x400039b040}, 0x0?) github.com/fatedier/frp/client/proxy/proxy.go:150 +0xb4 fp=0x4000085fa0 sp=0x4000085f10 pc=0x84b8f4 github.com/fatedier/frp/client/proxy.(Wrapper).InWorkConn.func1() github.com/fatedier/frp/client/proxy/proxy_wrapper.go:232 +0x3c fp=0x4000085fd0 sp=0x4000085fa0 pc=0x853e8c runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x4000085fd0 sp=0x4000085fd0 pc=0x46f9e4 created by github.com/fatedier/frp/client/proxy.(Wrapper).InWorkConn github.com/fatedier/frp/client/proxy/proxy_wrapper.go:232 +0x1e8

goroutine 26 [syscall]: syscall.Syscall(0x400004ac88?, 0x4e0e74?, 0x800000?, 0x7ffff800000?) syscall/syscall_linux.go:68 +0x20 fp=0x400004ac50 sp=0x400004abe0 pc=0x483dd0 syscall.read(0x4000384e00?, {0x40003b0000?, 0x100?, 0x14?}) syscall/zsyscall_linux_arm64.go:696 +0x40 fp=0x400004ac90 sp=0x400004ac50 pc=0x481aa0 syscall.Read(...) syscall/syscall_unix.go:183 internal/poll.ignoringEINTRIO(...) internal/poll/fd_unix.go:794 internal/poll.(FD).Read(0x4000384e00?, {0x40003b0000?, 0x4000?, 0x4000?}) internal/poll/fd_unix.go:163 +0x20c fp=0x400004ad10 sp=0x400004ac90 pc=0x4e0fac net.(netFD).Read(0x4000384e00, {0x40003b0000?, 0x40000385a8?, 0x0?}) net/fd_posix.go:55 +0x28 fp=0x400004ad60 sp=0x400004ad10 pc=0x5a67a8 net.(*conn).Read(0x40000109d0, {0x40003b0000?, 0x1d0?, 0x4000?}) net/net.go:183 +0x34 fp=0x400004adb0 sp=0x400004ad60 pc=0x5b9924 io.copyBuffer({0xffff5b09a3d8, 0x400039b040}, {0xb1b920, 0x40000109d0}, {0x40003b0000, 0x4000, 0x4000}) io/io.go:427 +0x168 fp=0x400004ae40 sp=0x400004adb0 pc=0x479f88 io.CopyBuffer({0xffff5b09a3d8?, 0x400039b040?}, {0xb1b920?, 0x40000109d0?}, {0x40003b0000?, 0xffff5b09a3d8?, 0x40000387a8?}) io/io.go:400 +0x38 fp=0x400004ae90 sp=0x400004ae40 pc=0x479db8 github.com/fatedier/golib/io.Join.func1({0xffff5b09a618?, 0x400039b040}, {0xffff5b098b88?, 0x40000109d0}, 0x40003ac0c8) github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:35 +0x16c fp=0x400004af90 sp=0x400004ae90 pc=0x82f08c github.com/fatedier/golib/io.Join.func3() github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:40 +0x40 fp=0x400004afd0 sp=0x400004af90 pc=0x82ee60 runtime.goexit() runtime/asm_arm64.s:1172 +0x4 fp=0x400004afd0 sp=0x400004afd0 pc=0x46f9e4 created by github.com/fatedier/golib/io.Join github.com/fatedier/golib@v0.1.1-0.20220321042308-c306138b83ac/io/io.go:40 +0x22c

Steps to reproduce

  1. ./frps -c ./frps.conf 运行正常
  2. ./frpc -c ./frpc.conf 运行正正常
  3. ssh frpsip+port 10.xx.50.10 10170 执行后, ./frpc -c ./frpc.conf 出现 异常退出

Affected area

fatedier commented 1 year ago

你这自己编译的还是自己多研究研究吧~

github-actions[bot] commented 1 year ago

Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.