[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[tor-bugs] #32472 [Core Tor/Tor]: buf_flush_to_tls: Non-fatal assertion !(flushlen > *buf_flushlen)



#32472: buf_flush_to_tls: Non-fatal assertion !(flushlen > *buf_flushlen)
------------------------------+------------------------------------
     Reporter:  dgoulet       |      Owner:  (none)
         Type:  defect        |     Status:  new
     Priority:  Medium        |  Milestone:  Tor: 0.4.3.x-final
    Component:  Core Tor/Tor  |    Version:
     Severity:  Normal        |   Keywords:  assert, tor-connection
Actual Points:                |  Parent ID:
       Points:                |   Reviewer:
      Sponsor:                |
------------------------------+------------------------------------
 Had this on my relay because I ran out of disk space due to `debug.log`
 being on.

 {{{
 Nov 05 12:39:01.801 [warn] tor_bug_occurred_(): Bug:
 src/lib/tls/buffers_tls.c:152: buf_flush_to_tls: Non-fatal assertion
 !(flushlen > *buf_flushlen) failed. (Future instances of this warning will
 be silenced.) (on Tor 0.4.3.0-alpha-dev 4413b98190d94b54)
 }}}

 So the code that exploded is:

 {{{
   if (BUG(flushlen > *buf_flushlen)) {
     flushlen = *buf_flushlen;
   }
 }}}

 It was triggered by lack of disk space for sure.

 The only thing I can see is if `connection_handle_write_impl()` was called
 with `force = 1` which happens with `connection_flush()` which makes tor
 use the bucket limit instead of the outbuf "flushlen" and thus could lead
 to that assert().

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/32472>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
_______________________________________________
tor-bugs mailing list
tor-bugs@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-bugs