Lines Matching refs:pool

123 static void kvp_acquire_lock(int pool)  in kvp_acquire_lock()  argument
128 if (fcntl(kvp_file_info[pool].fd, F_SETLKW, &fl) == -1) { in kvp_acquire_lock()
129 syslog(LOG_ERR, "Failed to acquire the lock pool: %d; error: %d %s", pool, in kvp_acquire_lock()
135 static void kvp_release_lock(int pool) in kvp_release_lock() argument
140 if (fcntl(kvp_file_info[pool].fd, F_SETLK, &fl) == -1) { in kvp_release_lock()
141 syslog(LOG_ERR, "Failed to release the lock pool: %d; error: %d %s", pool, in kvp_release_lock()
147 static void kvp_update_file(int pool) in kvp_update_file() argument
155 kvp_acquire_lock(pool); in kvp_update_file()
157 filep = fopen(kvp_file_info[pool].fname, "we"); in kvp_update_file()
159 syslog(LOG_ERR, "Failed to open file, pool: %d; error: %d %s", pool, in kvp_update_file()
161 kvp_release_lock(pool); in kvp_update_file()
165 fwrite(kvp_file_info[pool].records, sizeof(struct kvp_record), in kvp_update_file()
166 kvp_file_info[pool].num_records, filep); in kvp_update_file()
169 kvp_release_lock(pool); in kvp_update_file()
170 syslog(LOG_ERR, "Failed to write file, pool: %d", pool); in kvp_update_file()
174 kvp_release_lock(pool); in kvp_update_file()
177 static void kvp_update_mem_state(int pool) in kvp_update_mem_state() argument
181 struct kvp_record *record = kvp_file_info[pool].records; in kvp_update_mem_state()
183 int num_blocks = kvp_file_info[pool].num_blocks; in kvp_update_mem_state()
186 kvp_acquire_lock(pool); in kvp_update_mem_state()
188 filep = fopen(kvp_file_info[pool].fname, "re"); in kvp_update_mem_state()
190 syslog(LOG_ERR, "Failed to open file, pool: %d; error: %d %s", pool, in kvp_update_mem_state()
192 kvp_release_lock(pool); in kvp_update_mem_state()
202 syslog(LOG_ERR, "Failed to read file, pool: %d", pool); in kvp_update_mem_state()
222 kvp_file_info[pool].num_blocks = num_blocks; in kvp_update_mem_state()
223 kvp_file_info[pool].records = record; in kvp_update_mem_state()
224 kvp_file_info[pool].num_records = records_read; in kvp_update_mem_state()
227 kvp_release_lock(pool); in kvp_update_mem_state()
311 static int kvp_key_delete(int pool, const __u8 *key, int key_size) in kvp_key_delete() argument
321 kvp_update_mem_state(pool); in kvp_key_delete()
323 num_records = kvp_file_info[pool].num_records; in kvp_key_delete()
324 record = kvp_file_info[pool].records; in kvp_key_delete()
334 kvp_file_info[pool].num_records--; in kvp_key_delete()
335 kvp_update_file(pool); in kvp_key_delete()
347 kvp_file_info[pool].num_records--; in kvp_key_delete()
348 kvp_update_file(pool); in kvp_key_delete()
354 static int kvp_key_add_or_modify(int pool, const __u8 *key, int key_size, in kvp_key_add_or_modify() argument
369 kvp_update_mem_state(pool); in kvp_key_add_or_modify()
371 num_records = kvp_file_info[pool].num_records; in kvp_key_add_or_modify()
372 record = kvp_file_info[pool].records; in kvp_key_add_or_modify()
373 num_blocks = kvp_file_info[pool].num_blocks; in kvp_key_add_or_modify()
383 kvp_update_file(pool); in kvp_key_add_or_modify()
397 kvp_file_info[pool].num_blocks++; in kvp_key_add_or_modify()
402 kvp_file_info[pool].records = record; in kvp_key_add_or_modify()
403 kvp_file_info[pool].num_records++; in kvp_key_add_or_modify()
404 kvp_update_file(pool); in kvp_key_add_or_modify()
408 static int kvp_get_value(int pool, const __u8 *key, int key_size, __u8 *value, in kvp_get_value() argument
422 kvp_update_mem_state(pool); in kvp_get_value()
424 num_records = kvp_file_info[pool].num_records; in kvp_get_value()
425 record = kvp_file_info[pool].records; in kvp_get_value()
440 static int kvp_pool_enumerate(int pool, int index, __u8 *key, int key_size, in kvp_pool_enumerate() argument
448 kvp_update_mem_state(pool); in kvp_pool_enumerate()
449 record = kvp_file_info[pool].records; in kvp_pool_enumerate()
451 if (index >= kvp_file_info[pool].num_records) { in kvp_pool_enumerate()
1439 int pool; in main() local
1592 pool = hv_msg->kvp_hdr.pool; in main()
1658 if (kvp_key_add_or_modify(pool, in main()
1667 if (kvp_get_value(pool, in main()
1676 if (kvp_key_delete(pool, in main()
1694 if (pool != KVP_POOL_AUTO) { in main()
1695 if (kvp_pool_enumerate(pool, in main()