Module: kamailio Branch: master Commit: b6e2dce80a607b12276addea310c9696c3c39ce9 URL: https://github.com/kamailio/kamailio/commit/b6e2dce80a607b12276addea310c9696c3c39ce9
Author: Stefan Mititelu <[email protected]> Committer: Stefan Mititelu <[email protected]> Date: 2016-01-27T14:19:21+02:00 rtpengine: Init and dealloc hastable locks Right now only alloc and destroy is done. Also do init and dealloc. --- Modified: modules/rtpengine/rtpengine_hash.c --- Diff: https://github.com/kamailio/kamailio/commit/b6e2dce80a607b12276addea310c9696c3c39ce9.diff Patch: https://github.com/kamailio/kamailio/commit/b6e2dce80a607b12276addea310c9696c3c39ce9.patch --- diff --git a/modules/rtpengine/rtpengine_hash.c b/modules/rtpengine/rtpengine_hash.c index f8e610d..b36e93e 100644 --- a/modules/rtpengine/rtpengine_hash.c +++ b/modules/rtpengine/rtpengine_hash.c @@ -92,7 +92,7 @@ int rtpengine_hash_table_init(int size) { // init hashtable row_locks[i], row_entry_list[i] and row_totals[i] for (i = 0; i < hash_table_size; i++) { - // init hashtable row_locks[i] + // alloc hashtable row_locks[i] rtpengine_hash_table->row_locks[i] = lock_alloc(); if (!rtpengine_hash_table->row_locks[i]) { LM_ERR("no shm left to create rtpengine_hash_table->row_locks[%d]\n", i); @@ -100,6 +100,13 @@ int rtpengine_hash_table_init(int size) { return 0; } + // init hashtable row_locks[i] + if (!lock_init(rtpengine_hash_table->row_locks[i])) { + LM_ERR("fail to init rtpengine_hash_table->row_locks[%d]\n", i); + rtpengine_hash_table_destroy(); + return 0; + } + // init hashtable row_entry_list[i] rtpengine_hash_table->row_entry_list[i] = shm_malloc(sizeof(struct rtpengine_hash_entry)); if (!rtpengine_hash_table->row_entry_list[i]) { @@ -511,6 +518,7 @@ static void rtpengine_hash_table_free_row_lock(gen_lock_t *row_lock) { } lock_destroy(row_lock); + lock_dealloc(row_lock); return ; } _______________________________________________ sr-dev mailing list [email protected] http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
