[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-bugs] #24251 [- Select a component]: circuit_free only circuit number 0
#24251: circuit_free only circuit number 0
--------------------------------------+--------------------
Reporter: Felixix | Owner: (none)
Type: defect | Status: new
Priority: Medium | Milestone:
Component: - Select a component | Version:
Severity: Normal | Keywords:
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
--------------------------------------+--------------------
Hi everybody
{{{ Tor 0.3.2.4-alpha (git-940308f493edd10f) running on FreeBSD with
Libevent 2.1.8-stable, OpenSSL LibreSSL 2.5.4, Zlib 1.2.8, Liblzma 5.2.2,
and Libzstd 1.3.2. }}}
The following output can be observed:
{{{
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 0 (id: 0)
marked for close at src/or/command.c:585 (orig reason: 512, new reason: 0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 287478585 (id:
0) marked for close at src/or/command.c:585 (orig reason: 512, new reason:
0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 1674209475
(id: 0) marked for close at src/or/command.c:585 (orig reason: 512, new
reason: 0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 1882566763
(id: 0) marked for close at src/or/command.c:585 (orig reason: 512, new
reason: 0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 361115214 (id:
0) marked for close at src/or/command.c:585 (orig reason: 512, new reason:
0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 1845079337
(id: 0) marked for close at src/or/command.c:585 (orig reason: 512, new
reason: 0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 341507119 (id:
0) marked for close at src/or/command.c:585 (orig reason: 512, new reason:
0)
Nov 12 09:51:20.000 [info] circuit_mark_for_close_: Circuit 270872991 (id:
0) marked for close at src/or/command.c:585 (orig reason: 512, new reason:
0)
...
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
Nov 12 09:51:20.000 [info] circuit_free: Circuit 0 (id: 0) has been freed.
...
}}}
I look at a some minutes snap and count the `_mark` vs `_free` messages:
{{{
# cat torlog | grep "has been freed" | awk '{print $6}' | uniq -c
24144 Circuit
# cat torlog | grep "circuit_mark_for_close_" | awk '{print $6}' | uniq -c
24143 Circuit
}}}
It looks like each `_mark` has a corresponding `_free` (with a difference
of one). But all `_free` reporting the same number `n_circ_id`. Especially
this should be (IMHO) avoided by:
{{{
circuitlist.c
...
circuit_free(circuit_t *circ)
...
/* We keep a copy of this so we can log its value before it gets unset.
*/
n_circ_id = circ->n_circ_id;
...
log_info(LD_CIRC, "Circuit %u (id: %" PRIu32 ") has been freed.",
n_circ_id,
CIRCUIT_IS_ORIGIN(circ) ?
TO_ORIGIN_CIRCUIT(circ)->global_identifier : 0);
}}}
Well, the circuits are not effectively freed ? Am I missing something ?
Cheers!
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/24251>
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