OpenWrt上游bug FS#1102, FS#1618, FS#1539, FS#1514, FS#2554, FS#1603, FS#2245, FS#1170……等数不清的bug都与此相关。
凡是出现机器随机卡死/单核CPU占用100%的问题并且crashlog的trace内包含except_vec_vi_end的都与之相关。
据从胡伟武临时工@FlyGoat(18岁是学生,太强了!!!)那里了解到,早期步进的MT7621 eco1/2机器的veic/vint有硬件bug。由于Errata是口口相传,所以具体影响哪些步进暂时不可考。
最简单的复现方法是bash脚本fork bomb;
在/etc/sysctl.conf内加入net.core.busy_poll=100和net.core.busy_read=100的系统极易触发此Bug;
开启hardware offload后此Bug触发几率也会加大。
我测试下来的结果是,上游OpenWrt 18.06用GCC 7.3+4.14内核编译有此Bug,上游OpenWrt 19.07用GCC 7.5+4.14内核编译此Bug难以复现,GCC 8此Bug又再次出现,私有项目里4.14内核+GCC 6.5有此Bug。总之此问题的触发条件和barrier/ordering相关。可惜据FlyGoat介绍目前上游的Hauke没有bisect出问题根源来。
按下图所示阉割veic/vint之后bash bomb只会吃光内存,而hwnat/busy_poll的问题都消失了。

MTK/Ralink的NDA源码里面没有cpu-feature-overrides.h的内容,是上游的内核开发者手动添加的;后来内核才支持自动检测识别并开启veic/vint,这才导致bug暴露。
我这里的项目不是直接clone的大雕的源码(本质上是lede-17.01/openwrt-18.06的混合userland+含部分openwrt-19.07的补丁的4.14 kernel),所以就不提交pull request了。
最后再次感谢胡伟武临时工FlyGoat的指导以及农企临时工某伦孜孜不倦地背黑锅。

I'm contacting upstream to get the issue fixed in upstream.
Please carry this patch downstream before that.
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
大神们能否更新下
大神们能否更新下
https://github.com/coolsnowwolf/lede/issues/5411#issuecomment-686824289
dalao不是说等上游修复吗
大神们能否更新下
#5411 (comment)
dalao不是说等上游修复吗
上游还没个ETA,下游先carry着吧。
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
D2是newifi mini吗?还是newifi?我的newifi开着HWNAT,倒是很少见到有重启的情况,不过偶见断流和WiFi信号闪断
newifi mini
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
D2是newifi mini吗?还是newifi?我的newifi开着HWNAT,倒是很少见到有重启的情况,不过偶见断流和WiFi信号闪断
Newifi Y1和Newifi Y1S都是MT7620A的机器,和本issue无关
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
近期各架构都有莫名重启问题。包括x86_64 ipq 等。日志里还没什么可用信息。所以异常重启还真不一定是这原因
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
近期各架构都有莫名重启问题。包括x86_64 ipq 等。日志里还没什么可用信息。所以异常重启还真不一定是这原因
上游openwrt的master以及coolsnowwolf的fork的master的情况我不是很了解,尤其是5.4内核的
但是顶楼说的bug影响至今所有的mt7621机器。
newifi mini
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
D2是newifi mini吗?还是newifi?我的newifi开着HWNAT,倒是很少见到有重启的情况,不过偶见断流和WiFi信号闪断
Newifi Y1和Newifi Y1S都是MT7620A的机器,和本issue无关
newifi3是7621
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
近期各架构都有莫名重启问题。包括x86_64 ipq 等。日志里还没什么可用信息。所以异常重启还真不一定是这原因
上游openwrt的master以及coolsnowwolf的fork的master的情况我不是很了解,尤其是5.4内核的
但是顶楼说的bug影响至今所有的mt7621机器。
顶楼只提到了MT7621 eco1/2的芯片。我前不久买的小米AC2100,已经是eco3的芯片了,两周前也遇到过一次自动重启,不过那时候刚好是WAN连接到了48小时,被运营商自动断掉重连,所以无法判定是这个原因、还是系统bug导致的重启。
难怪我这款newifi3-d2刷的openwrt开启ACC加速后,总是不定时不定期随机性的自动重启,后来我重新编译不再集成这个ACC确实稳定的运行了
近期各架构都有莫名重启问题。包括x86_64 ipq 等。日志里还没什么可用信息。所以异常重启还真不一定是这原因
上游openwrt的master以及coolsnowwolf的fork的master的情况我不是很了解,尤其是5.4内核的
但是顶楼说的bug影响至今所有的mt7621机器。顶楼只提到了MT7621 eco1/2的芯片。我前不久买的小米AC2100,已经是eco3的芯片了,两周前也遇到过一次自动重启,不过那时候刚好是WAN连接到了48小时,被运营商自动断掉重连,所以无法判定是这个原因、还是系统bug导致的重启。
我的机器实际上也是eco3的。。
可能是luci兼容性问题,刚刚试用今天早上armv8的也是,不知道和那个有冲突,什么加速减速的都没开,ssh操作正常,网页会卡住然后重启
好像大雕的这个MT7621里面默认就没有veic/vint,没找到。。
农企临时工替联发科背黑锅的第27天。。
mark
Most helpful comment
I'm contacting upstream to get the issue fixed in upstream.
Please carry this patch downstream before that.