MT#61625 add global memory arena

Change-Id: I49c9f786d0826c090df348eb7ae600f6887611bd
coverity_scan
Richard Fuchs 11 months ago
parent 3129318dc2
commit 0dacb773cf

@ -80,6 +80,7 @@ static GQueue rtpe_cli = G_QUEUE_INIT;
GQueue rtpe_control_ng = G_QUEUE_INIT;
GQueue rtpe_control_ng_tcp = G_QUEUE_INIT;
struct bufferpool *shm_bufferpool;
memory_arena_t rtpe_arena;
struct rtpengine_config rtpe_config = {
// non-zero defaults
@ -1398,6 +1399,8 @@ RTPE_CONFIG_CHARPP_PARAMS
static void early_init(void) {
socket_init(); // needed for socktype_udp
memory_arena_init(&rtpe_arena);
memory_arena = &rtpe_arena;
}
#ifdef WITH_TRANSCODING
@ -1881,6 +1884,7 @@ int main(int argc, char **argv) {
kernel_shutdown_table();
options_free();
bufferpool_cleanup();
memory_arena_free(&rtpe_arena);
return 0;
}

@ -941,7 +941,7 @@ INLINE void call_memory_arena_release(void) {
return;
obj_put(call_memory_arena);
call_memory_arena = NULL;
memory_arena = NULL;
memory_arena = &rtpe_arena;
}
INLINE void call_memory_arena_set(call_t *c) {
call_memory_arena_release();

@ -7,6 +7,7 @@
#include "socket.h"
#include "auxlib.h"
#include "types.h"
#include "arena.h"
enum xmlrpc_format {
XF_SEMS = 0,
@ -320,6 +321,7 @@ extern GQueue rtpe_control_ng;
extern GQueue rtpe_control_ng_tcp;
extern struct bufferpool *shm_bufferpool;
extern memory_arena_t rtpe_arena;
#endif

@ -25,6 +25,7 @@ unsigned int rtpe_poller_rr_iter;
GString *dtmf_logs;
GQueue rtpe_control_ng = G_QUEUE_INIT;
struct bufferpool *shm_bufferpool;
memory_arena_t rtpe_arena;
static void __assert_g_string_eq(GString *a, const char *b, unsigned int line) {
if (strcmp(a->str, b) == 0) {

@ -20,6 +20,7 @@ unsigned int rtpe_poller_rr_iter;
GString *dtmf_logs;
GQueue rtpe_control_ng = G_QUEUE_INIT;
struct bufferpool *shm_bufferpool;
memory_arena_t rtpe_arena;
static str *sdup(char *s) {
str r = STR(s);

Loading…
Cancel
Save