MCPcopy Create free account
hub / github.com/OpenSIPS/opensips / init_lock_set

Function init_lock_set

modules/pike/ip_tree.c:80–109  ·  view source on GitHub ↗

size must be a power of 2 */

Source from the content-addressed store, hash-verified

78
79/* size must be a power of 2 */
80static gen_lock_set_t* init_lock_set(int *size)
81{
82 gen_lock_set_t *lset;
83
84 lset=0; /* kill warnings */
85 for( ; *size ; *size=((*size)>>1) ) {
86 LM_INFO("probing %d set size\n", *size);
87 /* create a lock set */
88 lset = lock_set_alloc( *size );
89 if (lset==0) {
90 LM_INFO("cannot get %d locks\n", *size);
91 continue;
92 }
93 /* init lock set */
94 if (lock_set_init(lset)==0) {
95 LM_INFO("cannot init %d locks\n", *size);
96 lock_set_dealloc( lset );
97 lset = 0;
98 continue;
99 }
100 /* alloc and init successful */
101 break;
102 }
103
104 if (*size==0) {
105 LM_ERR("cannot get a lock set\n");
106 return 0;
107 }
108 return lset;
109}
110
111
112

Callers 1

init_ip_treeFunction · 0.85

Calls 2

lock_set_allocFunction · 0.85
lock_set_initFunction · 0.85

Tested by

no test coverage detected