1749908 - Infinite loop in HTTP3 hangs socket thread

submited by
Style Pass
2022-01-13 11:30:04

Examples of appropriate bugs: URLs with backslash not fetched; URLs starting with a single slash turn into http:///; Cannot access authenticated FTP site.

While browsing, pages suddenly stopped loading. A look with htop showed the main process' socket thread eating 100% CPU and a look with perf top showed it jumping around Http3 ReadSegments and OnReadSegment code.

I killed Firefox and restarted it, and it immediately reproduced the issue again. I closed it and let the shutdown hang handler take a dump:

https://crash-stats.mozilla.org/report/index/07b0fd37-7f94-4371-bb05-0b78f0220113 Thread 7 is the Socket Thread. Built from https://hg.mozilla.org/mozilla-central/rev/9487d469939ee838cecf62a96acc5236716e6b3e

This appears to be affecting all Firefox upgraded overnight, e.g. https://old.reddit.com/r/firefox/comments/s2u7eg/is_firefox_down/ or https://news.ycombinator.com/item?id=29918052 or a search for Firefox on Twitter. I hope the auto-updater can bypass http3, otherwise I'm not sure how it's going to update to fix the issue.

It's not related to a specific version, we're getting reports ESR is even affected. Suspicion is around some long existing HTTP3 bug that's being triggered by an external service updating.

Leave a Comment