free_page(page); 
free_page(page); 
int copy_mount_options(const void __user *data, unsigned long *where){	int i;	unsigned long page;	unsigned long size;		*where = 0;	if (!data)		return 0;	if (!(page = __get_free_page(GFP_KERNEL)))		return -ENOMEM;	/* We only care that *some* data at the address the user	 * gave us is valid.  Just in case, we'll zero	 * the remainder of the page.	 */	/* copy_from_user cannot cross TASK_SIZE ! */	size = TASK_SIZE - (unsigned long)data;	if (size > PAGE_SIZE)		size = PAGE_SIZE;	i = size - exact_copy_from_user((void *)page, data, size);	if (!i) {		free_page(page); 		return -EFAULT;	}	if (i != PAGE_SIZE)		memset((char *)page + i, 0, PAGE_SIZE - i);	*where = page;	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/b58fed8b1959d6b9e4c951a54adc8960e1401b18/namespace.c/buggy/fs/namespace.c