mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-03 21:01:50 +00:00
agp: drop vmalloc flag.
Since the code that was too ugly to live is upstream, we can use it now, instead of rolling our own. Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
parent
f5c5f040b5
commit
da931a931d
2 changed files with 1 additions and 4 deletions
|
@ -97,20 +97,18 @@ EXPORT_SYMBOL(agp_flush_chipset);
|
||||||
void agp_alloc_page_array(size_t size, struct agp_memory *mem)
|
void agp_alloc_page_array(size_t size, struct agp_memory *mem)
|
||||||
{
|
{
|
||||||
mem->pages = NULL;
|
mem->pages = NULL;
|
||||||
mem->vmalloc_flag = false;
|
|
||||||
|
|
||||||
if (size <= 2*PAGE_SIZE)
|
if (size <= 2*PAGE_SIZE)
|
||||||
mem->pages = kmalloc(size, GFP_KERNEL | __GFP_NORETRY);
|
mem->pages = kmalloc(size, GFP_KERNEL | __GFP_NORETRY);
|
||||||
if (mem->pages == NULL) {
|
if (mem->pages == NULL) {
|
||||||
mem->pages = vmalloc(size);
|
mem->pages = vmalloc(size);
|
||||||
mem->vmalloc_flag = true;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(agp_alloc_page_array);
|
EXPORT_SYMBOL(agp_alloc_page_array);
|
||||||
|
|
||||||
void agp_free_page_array(struct agp_memory *mem)
|
void agp_free_page_array(struct agp_memory *mem)
|
||||||
{
|
{
|
||||||
if (mem->vmalloc_flag) {
|
if (is_vmalloc_addr(mem->pages)) {
|
||||||
vfree(mem->pages);
|
vfree(mem->pages);
|
||||||
} else {
|
} else {
|
||||||
kfree(mem->pages);
|
kfree(mem->pages);
|
||||||
|
|
|
@ -79,7 +79,6 @@ struct agp_memory {
|
||||||
u32 physical;
|
u32 physical;
|
||||||
bool is_bound;
|
bool is_bound;
|
||||||
bool is_flushed;
|
bool is_flushed;
|
||||||
bool vmalloc_flag;
|
|
||||||
/* list of agp_memory mapped to the aperture */
|
/* list of agp_memory mapped to the aperture */
|
||||||
struct list_head mapped_list;
|
struct list_head mapped_list;
|
||||||
/* DMA-mapped addresses */
|
/* DMA-mapped addresses */
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue