Fix gprof bottlenecks on exit nodes found by Jacob.
commitb262e7656376a938fc149ae1bf280eeef81c6002
authorNick Mathewson <nickm@torproject.org>
Wed, 3 Jun 2009 17:52:03 +0000 (3 13:52 -0400)
committerNick Mathewson <nickm@torproject.org>
Wed, 3 Jun 2009 17:52:03 +0000 (3 13:52 -0400)
tree16c3a8fee7b10c720fef14df73e53a3a19b6c80f
parentc4c7dcd453b62b3d3bcc8e78df8455a77645e62a
Fix gprof bottlenecks on exit nodes found by Jacob.

Apparently all the stuff that does a linear scan over all the DNS
cache entries can get really expensive when your DNS cache is very
large.  It's hard to say how much this will help performance, since
gprof doesn't count time spent in OpenSSL or zlib, but I'd guess 10%.

Also, this patch removes calls to assert_connection_ok() from inside
the read and write callbacks, which are similarly unneeded, and a
little costlier than I'm happy with.

This is probably worth backporting to 0.2.0.
ChangeLog
src/or/dns.c
src/or/main.c