[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]
[tor-commits] [tor/master] Add some values to OOM log msg #24501
commit ac9eebd63637d39b2a55d9a40c748a197fd47f93
Author: Fernando Fernandez Mancera <ffernandezmancera@xxxxxxxxx>
Date: Wed Dec 20 18:31:30 2017 +0100
Add some values to OOM log msg #24501
Exposing cell_queues_get_total_allocation(), buf_get_total_allocation(),
tor_compress_get_total_allocation(), tor_compress_get_total_allocation() when
hit MaxMemInQueues threshold.
Fixes #24501
Signed-off-by: Fernando Fernandez Mancera <ffernandezmancera@xxxxxxxxx>
---
changes/ticket24501 | 3 +++
src/or/circuitlist.c | 12 +++++++++---
src/or/relay.c | 2 +-
src/or/relay.h | 2 +-
4 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/changes/ticket24501 b/changes/ticket24501
new file mode 100644
index 000000000..4a87462e9
--- /dev/null
+++ b/changes/ticket24501
@@ -0,0 +1,3 @@
+ o Minor features (logging):
+ - Make the log more quantitative when we hit MaxMemInQueues threshold
+ exposing some values. Closes ticket 24501.
diff --git a/src/or/circuitlist.c b/src/or/circuitlist.c
index d442887c9..c1b5c1a95 100644
--- a/src/or/circuitlist.c
+++ b/src/or/circuitlist.c
@@ -2329,9 +2329,15 @@ circuits_handle_oom(size_t current_allocation)
int n_circuits_killed=0;
int n_dirconns_killed=0;
uint32_t now_ms;
- log_notice(LD_GENERAL, "We're low on memory. Killing circuits with "
- "over-long queues. (This behavior is controlled by "
- "MaxMemInQueues.)");
+ log_notice(LD_GENERAL, "We're low on memory (cell queues total alloc: %zu,"
+ " buffer total alloc: %zu, tor compress total alloc: %zu,"
+ " rendezvous cache total alloc: %zu). Killing circuits with"
+ " over-long queues. (This behavior is controlled by"
+ " MaxMemInQueues.)",
+ cell_queues_get_total_allocation(),
+ buf_get_total_allocation(),
+ tor_compress_get_total_allocation(),
+ rend_cache_get_total_allocation());
{
size_t mem_target = (size_t)(get_options()->MaxMemInQueues *
diff --git a/src/or/relay.c b/src/or/relay.c
index 09f70793d..952622b6b 100644
--- a/src/or/relay.c
+++ b/src/or/relay.c
@@ -2530,7 +2530,7 @@ packed_cell_mem_cost(void)
}
/* DOCDOC */
-STATIC size_t
+size_t
cell_queues_get_total_allocation(void)
{
return total_cells_allocated * packed_cell_mem_cost();
diff --git a/src/or/relay.h b/src/or/relay.h
index 2412dcb23..479ce5496 100644
--- a/src/or/relay.h
+++ b/src/or/relay.h
@@ -17,6 +17,7 @@ extern uint64_t stats_n_relay_cells_delivered;
int circuit_receive_relay_cell(cell_t *cell, circuit_t *circ,
cell_direction_t cell_direction);
+size_t cell_queues_get_total_allocation(void);
void relay_header_pack(uint8_t *dest, const relay_header_t *src);
void relay_header_unpack(relay_header_t *dest, const uint8_t *src);
@@ -102,7 +103,6 @@ STATIC int connection_edge_process_resolved_cell(edge_connection_t *conn,
const relay_header_t *rh);
STATIC packed_cell_t *packed_cell_new(void);
STATIC packed_cell_t *cell_queue_pop(cell_queue_t *queue);
-STATIC size_t cell_queues_get_total_allocation(void);
STATIC int cell_queues_check_size(void);
#endif /* defined(RELAY_PRIVATE) */
_______________________________________________
tor-commits mailing list
tor-commits@xxxxxxxxxxxxxxxxxxxx
https://lists.torproject.org/cgi-bin/mailman/listinfo/tor-commits