diff options
Diffstat (limited to 'drivers/char/agp/generic.c')
| -rw-r--r-- | drivers/char/agp/generic.c | 6 | 
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/char/agp/generic.c b/drivers/char/agp/generic.c index 4b51982fd23..d2abf514398 100644 --- a/drivers/char/agp/generic.c +++ b/drivers/char/agp/generic.c @@ -97,20 +97,18 @@ EXPORT_SYMBOL(agp_flush_chipset);  void agp_alloc_page_array(size_t size, struct agp_memory *mem)  {  	mem->pages = NULL; -	mem->vmalloc_flag = false;  	if (size <= 2*PAGE_SIZE) -		mem->pages = kmalloc(size, GFP_KERNEL | __GFP_NORETRY); +		mem->pages = kmalloc(size, GFP_KERNEL | __GFP_NOWARN);  	if (mem->pages == NULL) {  		mem->pages = vmalloc(size); -		mem->vmalloc_flag = true;  	}  }  EXPORT_SYMBOL(agp_alloc_page_array);  void agp_free_page_array(struct agp_memory *mem)  { -	if (mem->vmalloc_flag) { +	if (is_vmalloc_addr(mem->pages)) {  		vfree(mem->pages);  	} else {  		kfree(mem->pages);  |