/* vmalloc=size forces the vmalloc area to be exactly 'size' bytes. This can be used to increase (or decrease) the vmalloc area - the default is 128m.  */
static void __init early_vmalloc(char **arg)
/* vmalloc=size forces the vmalloc area to be exactly 'size' bytes. This can be used to increase (or decrease) the vmalloc area - the default is 128m.  */
static void __init early_vmalloc(char **arg)
{
	vmalloc_reserve = memparse(*arg, arg);
	if (vmalloc_reserve < SZ_16M) {
		vmalloc_reserve = SZ_16M;
		printk(KERN_WARNING
			"vmalloc area too small, limiting to %luMB\n",
			vmalloc_reserve >> 20);
	}
	if (vmalloc_reserve > VMALLOC_END - (PAGE_OFFSET + SZ_32M)) {
		vmalloc_reserve = VMALLOC_END - (PAGE_OFFSET + SZ_32M);
		printk(KERN_WARNING
			"vmalloc area is too big, limiting to %luMB\n",
			vmalloc_reserve >> 20);
	}
}