mirror of
https://gitlab.torproject.org/tpo/core/tor.git
synced 2024-11-24 04:13:28 +01:00
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@gmail.com>
This commit is contained in:
parent
5c4da2cacd
commit
ac9eebd636
3
changes/ticket24501
Normal file
3
changes/ticket24501
Normal file
@ -0,0 +1,3 @@
|
||||
o Minor features (logging):
|
||||
- Make the log more quantitative when we hit MaxMemInQueues threshold
|
||||
exposing some values. Closes ticket 24501.
|
@ -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 "
|
||||
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.)");
|
||||
" 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 *
|
||||
|
@ -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();
|
||||
|
@ -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) */
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user