Ejemplo n.º 1
0
static inline void
vhd_index_initialize_block(vhd_index_block_t *block)
{
	char *buf;

	block->blk   = 0;
	block->state = 0;
	INIT_LIST_HEAD(&block->queue);
	vhd_index_initialize_request(&block->req);
	memset(block->vhdi_block.table, 0, block->table_size);
}
Ejemplo n.º 2
0
static void
vhd_index_init(vhd_index_t *index)
{
	int i;

	memset(index, 0, sizeof(vhd_index_t));

	index->cache_free_cnt = VHD_INDEX_CACHE_SIZE;
	for (i = 0; i < VHD_INDEX_CACHE_SIZE; i++) {
		index->cache_free_list[i] = index->cache_list + i;
		vhd_index_initialize_block(index->cache_free_list[i]);
	}

	index->requests_free_cnt = VHD_INDEX_REQUESTS;
	for (i = 0; i < VHD_INDEX_REQUESTS; i++) {
		index->requests_free_list[i] = index->requests_list + i;
		vhd_index_initialize_request(index->requests_free_list[i]);
	}

	for (i = 0; i < VHD_INDEX_FILE_POOL_SIZE; i++)
		index->fds[i].fd = -1;
}