Clash: [Bug] 随机崩溃抛出 illegal instruction

Created on 11 Mar 2020  ·  10Comments  ·  Source: Dreamacro/clash


感谢你向 Clash Core 提交 issue!
在提交之前,请确认:

  • [ ] 我已经在 Issue Tracker 中找过我要提出的问题
  • [x] 这是 Clash 核心的问题,并非我所使用的 Clash 衍生版本(如 Openclash、Koolclash 等)的特定问题
  • [x] 我已经使用 Clash core 的 dev 分支版本测试过,问题依旧存在
  • [ ] 如果你可以自己 debug 并解决的话,提交 PR 吧!

请注意,如果你并没有遵照这个 issue template 填写内容,我们将直接关闭这个 issue。

我都确认过了,我要继续提交。

请附上任何可以帮助我们解决这个问题的信息,如果我们收到的信息不足,我们将对这个 issue 加上 Needs more information 标记并在收到更多资讯之前关闭 issue。

clash core config

redir-port: 7892
port: 7890
socks-port: 7891
mode: Rule
log-level: debug
external-controller: 0.0.0.0:9090
secret: "123456"
allow-lan: true
bind-address: "*"
external-ui: "/usr/share/openclash/dashboard"
hosts:
##Custom HOSTS##
#  experimental hosts, support wildcard (e.g. *.clash.dev Even *.foo.*.example.com)
#  static domain has a higher priority than wildcard domain (foo.example.com > *.example.com)
#  NOTE: hosts don't work with `fake-ip`

#  '*.clash.dev': 127.0.0.1
#  'alpha.clash.dev': '::1'
##Custom HOSTS END##
dns:
  enable: true
  ipv6: false
  enhanced-mode: redir-host
  listen: 0.0.0.0:7874
  default-nameserver:
    - 223.5.5.5
    - 223.6.6.6
##Custom DNS##
  nameserver:
  - https://223.5.5.5/dns-query
  - https://223.6.6.6/dns-query
  fallback:
  - https://dns.nextdns.io/test
  fallback-filter:
    geoip: true
    ipcidr:
      - 240.0.0.0/4
#===================== OpenClash-General-Settings =====================#
Proxy:
- { name: "test1", type: ss, server: test1, port: 114514, cipher: chacha20-ietf-poly1305, password: "114514", udp: true }
- { name: "test2", type: ss, server: test2, port: 114514, cipher: chacha20-ietf-poly1305, password: "114514", udp: true }
- { name: "test3", type: ss, server: test3, port: 114514, cipher: chacha20-ietf-poly1305, password: "114514", udp: true }
- { name: "test4", type: ss, server: test4, port: 114514, cipher: chacha20-ietf-poly1305, password: "114514", udp: true }
- { name: "test5", type: ss, server: test5, port: 114514, cipher: chacha20-ietf-poly1305, password: "114514", udp: true }
Proxy Group:
- name: Auto - Fallback
  type: fallback
  proxies:
  - "test1"
  - "test2"
  - "test3"
  - "test4"
  - "test5"
  url: http://www.gstatic.com/generate_204
  interval: "600"
- name: Proxy
  type: select
  proxies:
  - Auto - Fallback
  - DIRECT
  - "test1"
  - "test2"
  - "test3"
  - "test4"
  - "test5"
- name: Domestic
  type: select
  proxies:
  - DIRECT
  - Proxy
- name: Others
  type: select
  proxies:
  - Proxy
  - DIRECT
  - Domestic
- name: AdBlock
  type: select
  proxies:
  - REJECT
  - DIRECT
  - Proxy
- name: Apple
  type: select
  proxies:
  - DIRECT
  - Proxy
- name: AsianTV
  type: select
  proxies:
  - DIRECT
  - Proxy
  - "test1"
  - "test2"
  - "test3"
  - "test4"
  - "test5"
- name: GlobalTV
  type: select
  proxies:
  - Proxy
  - DIRECT
  - "test1"
  - "test2"
  - "test3"
  - "test4"
  - "test5"
Rule:

Clash log

root@OpenWrt:~# /etc/openclash/clash -d /etc/openclash -f /etc/openclash/config/love4taylor.yaml -t
SIGILL: illegal instruction
PC=0x87fb4 m=0 sigcode=128

goroutine 1 [running]:
runtime.asyncPreempt()
        /usr/lib/go-1.14/src/runtime/preempt_mipsx.s:40 +0x7c fp=0x10b3a2c sp=0x10b3938 pc=0x87fb4
gopkg.in/yaml%2ev2.read(0x106c480, 0x10eefc0, 0xe, 0x20, 0x10eef00, 0xe, 0x20)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/scannerc.go:525 +0xdc fp=0x10b3a60 sp=0x10b3a30 pc=0x37bbc4gopkg.in/yaml%2ev2.yaml_parser_scan_plain_scalar(0x106c480, 0x10b3b9c, 0x10b3b01)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/scannerc.go:2638 +0x280 fp=0x10b3b8c sp=0x10b3a60 pc=0x38a510
gopkg.in/yaml%2ev2.yaml_parser_fetch_plain_scalar(0x106c480, 0x201)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/scannerc.go:1435 +0x80 fp=0x10b3be4 sp=0x10b3b8c pc=0x3802b8
gopkg.in/yaml%2ev2.yaml_parser_fetch_next_token(0x106c480, 0x105d3a0)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/scannerc.go:813 +0x510 fp=0x10b3c10 sp=0x10b3be4 pc=0x37ca1c
gopkg.in/yaml%2ev2.yaml_parser_fetch_more_tokens(0x106c480, 0x106c501)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/scannerc.go:642 +0x50 fp=0x10b3c28 sp=0x10b3c10 pc=0x37c2a0gopkg.in/yaml%2ev2.peek_token(……)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/parserc.go:47
gopkg.in/yaml%2ev2.yaml_parser_parse_indentless_sequence_entry(0x106c480, 0x106c588, 0x36adb0)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/parserc.go:640 +0x344 fp=0x10b3d0c sp=0x10b3c28 pc=0x374fdcgopkg.in/yaml%2ev2.yaml_parser_state_machine(0x106c480, 0x106c588, 0x1)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/parserc.go:128 +0x2a0 fp=0x10b3d20 sp=0x10b3d0c pc=0x371a50gopkg.in/yaml%2ev2.yaml_parser_parse(0x106c480, 0x106c588, 0x10bc201)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/parserc.go:72 +0xb4 fp=0x10b3d30 sp=0x10b3d20 pc=0x371778  gopkg.in/yaml%2ev2.(*parser).peek(0x106c480, 0x10f60c0)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:105 +0x54 fp=0x10b3d40 sp=0x10b3d30 pc=0x36a184  gopkg.in/yaml%2ev2.(*parser).sequence(0x106c480, 0x10ecb07)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:205 +0x9c fp=0x10b3d74 sp=0x10b3d40 pc=0x36ad90  gopkg.in/yaml%2ev2.(*parser).parse(0x106c480, 0x10ecb40)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:151 +0x20c fp=0x10b3d9c sp=0x10b3d74 pc=0x36a600 gopkg.in/yaml%2ev2.(*parser).mapping(0x106c480, 0x9)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:217 +0xd4 fp=0x10b3dd4 sp=0x10b3d9c pc=0x36b024
gopkg.in/yaml%2ev2.(*parser).parse(0x106c480, 0x104b003)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:149 +0x1e4 fp=0x10b3dfc sp=0x10b3dd4 pc=0x36a5d8 gopkg.in/yaml%2ev2.(*parser).document(0x106c480, 0x3)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:175 +0xb4 fp=0x10b3e2c sp=0x10b3dfc pc=0x36a780  gopkg.in/yaml%2ev2.(*parser).parse(0x106c480, 0x0)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/decode.go:153 +0x180 fp=0x10b3e54 sp=0x10b3e2c pc=0x36a574 gopkg.in/yaml%2ev2.unmarshal(0x10cc000, 0xcd41, 0xcf41, 0x4701c0, 0x100c860, 0x431b00, 0x0, 0x0)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/yaml.go:142 +0x22c fp=0x10b3ea4 sp=0x10b3e54 pc=0x38b7a4   gopkg.in/yaml%2ev2.Unmarshal(……)
        /home/love4taylor/go/pkg/mod/gopkg.in/[email protected]/yaml.go:81
github.com/Dreamacro/clash/config.UnmarshalRawConfig(0x10cc000, 0xcd41, 0xcf41, 0x0, 0x108fc4, 0x497120)
        /home/love4taylor/build/clash/source/config/config.go:168 +0x278 fp=0x10b3ed0 sp=0x10b3ea4 pc=0x423c80
github.com/Dreamacro/clash/config.Parse(0x10cc000, 0xcd41, 0xcf41, 0xcd41, 0xcf41, 0x0)
        /home/love4taylor/build/clash/source/config/config.go:126 +0x4c fp=0x10b3eec sp=0x10b3ed0 pc=0x4239a4
github.com/Dreamacro/clash/hub/executor.ParseWithBytes(……)
        /home/love4taylor/build/clash/source/hub/executor/executor.go:75
github.com/Dreamacro/clash/hub/executor.ParseWithPath(0x7fae6eb9, 0x25, 0x0, 0x0, 0xc36ea17f)
        /home/love4taylor/build/clash/source/hub/executor/executor.go:70 +0x90 fp=0x10b3f0c sp=0x10b3eec pc=0x431bd8    github.com/Dreamacro/clash/hub/executor.Parse(……)
        /home/love4taylor/build/clash/source/hub/executor/executor.go:60
main.main()
        /home/love4taylor/build/clash/source/main.go:65 +0x168 fp=0x10b3fc0 sp=0x10b3f0c pc=0x44b938
runtime.main()
        /usr/lib/go-1.14/src/runtime/proc.go:203 +0x284 fp=0x10b3fec sp=0x10b3fc0 pc=0x4f9ec
runtime.goexit()
        /usr/lib/go-1.14/src/runtime/asm_mipsx.s:651 +0x4 fp=0x10b3fec sp=0x10b3fec pc=0x87834

goroutine 6 [chan receive]:
github.com/Dreamacro/clash/common/observable.(*Observable).process(0x105caa0)
        /home/love4taylor/build/clash/source/common/observable/observable.go:16 +0xe4
created by github.com/Dreamacro/clash/common/observable.NewObservable
        /home/love4taylor/build/clash/source/common/observable/observable.go:63 +0xa4

goroutine 7 [select]:
gopkg.in/eapache/channels%2ev1.(*InfiniteChannel).infiniteBuffer(0x100a220)
        /home/love4taylor/go/pkg/mod/gopkg.in/eapache/[email protected]/infinite_channel.go:49 +0x120
created by gopkg.in/eapache/channels%2ev1.NewInfiniteChannel
        /home/love4taylor/go/pkg/mod/gopkg.in/eapache/[email protected]/infinite_channel.go:19 +0x160

goroutine 8 [select]:
gopkg.in/eapache/channels%2ev1.(*InfiniteChannel).infiniteBuffer(0x100a230)
        /home/love4taylor/go/pkg/mod/gopkg.in/eapache/[email protected]/infinite_channel.go:49 +0x120
created by gopkg.in/eapache/channels%2ev1.NewInfiniteChannel
        /home/love4taylor/go/pkg/mod/gopkg.in/eapache/[email protected]/infinite_channel.go:19 +0x160

goroutine 9 [select]:
github.com/Dreamacro/clash/tunnel.(*Manager).handleCh(0x1078230, 0x101e300, 0x1078250, 0x1078260, 0x1078270)
        /home/love4taylor/build/clash/source/tunnel/manager.go:81 +0xd4
created by github.com/Dreamacro/clash/tunnel.(*Manager).handle
        /home/love4taylor/build/clash/source/tunnel/manager.go:74 +0x70

goroutine 10 [select]:
github.com/Dreamacro/clash/tunnel.(*Manager).handleCh(0x1078230, 0x101e340, 0x1078258, 0x1078268, 0x1078278)
        /home/love4taylor/build/clash/source/tunnel/manager.go:81 +0xd4
created by github.com/Dreamacro/clash/tunnel.(*Manager).handle
        /home/love4taylor/build/clash/source/tunnel/manager.go:75 +0xb4

goroutine 11 [chan receive]:
github.com/Dreamacro/clash/tunnel.process()
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:126 +0x118
created by github.com/Dreamacro/clash/tunnel.init.1
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:42 +0x44

goroutine 17 [chan receive]:
github.com/Dreamacro/clash/tunnel.processUDP()
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:110 +0x70
created by github.com/Dreamacro/clash/tunnel.process
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:122 +0x70

goroutine 18 [chan receive]:
github.com/Dreamacro/clash/tunnel.processUDP()
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:110 +0x70
created by github.com/Dreamacro/clash/tunnel.process
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:122 +0x70

goroutine 19 [chan receive]:
github.com/Dreamacro/clash/tunnel.processUDP()
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:110 +0x70
created by github.com/Dreamacro/clash/tunnel.process
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:122 +0x70

goroutine 20 [chan receive]:
github.com/Dreamacro/clash/tunnel.processUDP()
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:110 +0x70
created by github.com/Dreamacro/clash/tunnel.process
        /home/love4taylor/build/clash/source/tunnel/tunnel.go:122 +0x70

r0   0x0        r1   0x3
r2   0xe        r3   0x20
r4   0x106c480  r5   0x10eefc0
r6   0xf        r7   0x73
r8   0x1        r9   0x1
r10  0x0        r11  0x1759
r12  0x600      r13  0x201
r14  0x10de000  r15  0x164
r16  0x0        r17  0x0
r18  0x0        r19  0x0
r20  0x0        r21  0x0
r22  0x2        r23  0x820000
r24  0xcb       r25  0x2
r26  0x0        r27  0x0
r28  0x10e4048  r29  0x10b3938
r30  0x10000e0  r31  0x37bbc4
pc   0x87fb4    link 0x37bbc4
lo   0x0        hi   0x0

环境 Environment

  • Clash Core 的操作系统 (the OS that the Clash core is running on)
    Official OpenWrt (MT7621)
  • 使用者的操作系统 (the OS running on the client)
    ……
  • 网路环境或拓扑 (network conditions/topology)
    ……
  • iptables,如果适用 (if applicable)
    ……
  • ISP 有没有进行 DNS 污染 (is your ISP performing DNS pollution?)
    ……
  • 其他
    Core: v0.18.0-14-gb263095(mipsle-softfloat)

说明 Description

随机崩溃,无法使用

重现问题的具体布骤 Steps to Reproduce

  1. 正常启动 OpenClash,或者使用 -t 测试。2. Core 出现随机崩溃。

我预期会发生……?
正常启动。

实际上发生了什麽?
Core 随机崩溃。

可能的解决方案 Possible Solution



更多信息 More Information

bug upstream

Most helpful comment

All 10 comments

链接里的不是 arm 么,我这是 mipsel 并且也使用软浮点的二进制文件了。

试试 armv5 的

跨架构不能运行的吧。

./clash-linux-armv5: line 1: syntax error: unexpected word (expecting ")")

openwrt编译的时候开启fpu就可以解决这个问题。建议自己编译一下就行。

自己编译开模拟确实正常了,不过之前用官方固件+软浮点二进制文件也挺正常的,就很怪。

可能是 go1.14 的变动

@Love4Taylor 试试 go 1.14.1 编译

close because of no response

Was this page helpful?
0 / 5 - 0 ratings