}  if (!enough_swap(nr_pages)) { printk(KERN_ERR "swsusp: Not enough free swap\n"); return -ENOSPC; 
asmlinkage int swsusp_save(void){	unsigned int nr_pages;	pr_debug("swsusp: critical section: \n");	if (save_highmem()) {		printk(KERN_CRIT "swsusp: Not enough free pages for highmem\n");		restore_highmem();		return -ENOMEM;	}	drain_local_pages();	nr_pages = count_data_pages();	printk("swsusp: Need to copy %u pages\n", nr_pages);	pr_debug("swsusp: pages needed: %u + %lu + %u, free: %u\n",		 nr_pages,		 (nr_pages + PBES_PER_PAGE - 1) / PBES_PER_PAGE,		 PAGES_FOR_IO, nr_free_pages());	/* This is needed because of the fixed size of swsusp_info */	if (MAX_PBES < (nr_pages + PBES_PER_PAGE - 1) / PBES_PER_PAGE)		return -ENOSPC;	if (!enough_free_mem(nr_pages)) {		printk(KERN_ERR "swsusp: Not enough free memory\n");		return -ENOMEM;	}	if (!enough_swap(nr_pages)) {		printk(KERN_ERR "swsusp: Not enough free swap\n");		return -ENOSPC;	}	pagedir_nosave = swsusp_alloc(nr_pages);	if (!pagedir_nosave)		return -ENOMEM;	/* During allocating of suspend pagedir, new cold pages may appear.	 * Kill them.	 */	drain_local_pages();	copy_data_pages(pagedir_nosave);	/*	 * End of critical section. From now on, we can write to memory,	 * but we should not touch disk. This specially means we must _not_	 * touch swap space! Except we must write out our image of course.	 */	nr_copy_pages = nr_pages;	printk("swsusp: critical section/: done (%d pages copied)\n", nr_pages);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/0fbeb5a45dccd493c35a68a5548e6a9d9882a791/snapshot.c/clean/kernel/power/snapshot.c