[tor-bugs] #33211 [Circumvention/Snowflake]: proxy-go sometimes gets into a 100+% CPU state

Tor Bug Tracker & Wiki blackhole at torproject.org
Sun Feb 23 00:18:53 UTC 2020


#33211: proxy-go sometimes gets into a 100+% CPU state
-------------------------------------+-----------------------------
 Reporter:  dcf                      |          Owner:  cohosh
     Type:  defect                   |         Status:  merge_ready
 Priority:  Medium                   |      Milestone:
Component:  Circumvention/Snowflake  |        Version:
 Severity:  Normal                   |     Resolution:
 Keywords:                           |  Actual Points:
Parent ID:                           |         Points:
 Reviewer:                           |        Sponsor:
-------------------------------------+-----------------------------

Comment (by cohosh):

 Replying to [comment:17 dcf]:
 > I reproduced the symptoms I was thinking of and got a profile. Files are
 at https://people.torproject.org/~dcf/bug33211/. I had to let proxy-go run
 for an hour (details below) until it happened. Then I let it run for 30
 minutes at high CPU so that whatever was going wrong would dominate the
 profile. The [https://people.torproject.org/~dcf/bug33211/proxy-
 go.profile.2020-02-22T20:32:32Z.png graph] tells the story.
 `pion/dtls/internal/crypto/ccm.(*ccm).cbcRound` and
 `crypto/aes.encryptBlockAsm` are major contributors, but I believe they
 are a separate issue that is fixed by your comment:16. The culprit for
 what I was describing of is
 `pion/sctp.(*payloadQueue).markAllToRetrasmit`, called by
 `sctp.(*Association).onRetransmissionTimeout`. It looks to me like a timer
 somewhere is becoming negative and becoming a busy-loop (similar to the
 bug in quic-go from #33401).
 >
 > During the time of high CPU usage, proxy-go wasn't producing an abnormal
 amount of log output (probably about 1 line per second on average), nor
 was it sending an abnormal amount of packets.

 Ah interesting. Nice work with this! I can take a closer look at the SCTP
 code next week.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/33211#comment:19>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list