Hasty Briefsbeta

双语

The fix for a segfault that never shipped

4 months ago
  • #fixed-point-arithmetic
  • #debugging
  • #audio-encoding
  • Recall.ai每月处理数百万小时的会议音频,将不同格式统一标准化处理
  • 该公司在一个古老的AAC编码器中遭遇罕见段错误,导致每3600万次会议机器人实例中约有1次数据丢失
  • 问题根源是VisualOn AAC编码器中存在定点数学运算缺陷,该补丁虽在十多年前就已开发但从未向下游分发
  • 为诊断问题,Recall.ai开发了名为'垃圾车'的Rust二进制工具,用于从临时EC2实例抓取核心转储并上传至S3
  • 分析显示崩溃发生在`voAACEnc_pow2_xy`函数中,因定点算术错误导致`avgEn < minEn`而引发越界访问
  • 团队通过强制`avgEn >= minEn`实现临时修复,最终采用现代AAC编码器替代陈旧版本以彻底杜绝此类崩溃