/* We should probably have a fallback mechanism to allocate virtual memory out of partially filled vmap blocks. However vmap block sizing should be fairly reasonable according to the vmalloc size, so it shouldn't be a big problem.  */
static unsigned long addr_to_vb_idx(unsigned long addr)
/* We should probably have a fallback mechanism to allocate virtual memory out of partially filled vmap blocks. However vmap block sizing should be fairly reasonable according to the vmalloc size, so it shouldn't be a big problem.  */
static unsigned long addr_to_vb_idx(unsigned long addr)
{
	addr -= VMALLOC_START & ~(VMAP_BLOCK_SIZE-1);
	addr /= VMAP_BLOCK_SIZE;
	return addr;
}