OSDN Git Service

fixes from kernel: Make users of page->count use the provided macros
authorDave Airlie <airlied@linux.ie>
Sun, 30 May 2004 23:34:23 +0000 (23:34 +0000)
committerDave Airlie <airlied@linux.ie>
Sun, 30 May 2004 23:34:23 +0000 (23:34 +0000)
linux-core/ati_pcigart.c
linux-core/drm_vm.c
linux/ati_pcigart.h
linux/drm_vm.h

index 221ceb6..9ad49c0 100644 (file)
@@ -68,7 +68,7 @@ static unsigned long DRM(ati_alloc_pcigart_table)( void )
        page = virt_to_page( address );
 
        for ( i = 0 ; i < ATI_PCIGART_TABLE_PAGES ; i++, page++ ) {
-               atomic_inc( &page->count );
+               get_page(page);
                SetPageReserved( page );
        }
 
@@ -85,7 +85,7 @@ static void DRM(ati_free_pcigart_table)( unsigned long address )
        page = virt_to_page( address );
 
        for ( i = 0 ; i < ATI_PCIGART_TABLE_PAGES ; i++, page++ ) {
-               atomic_dec( &page->count );
+               __put_page(page);
                ClearPageReserved( page );
        }
 
index 5b97598..a495884 100644 (file)
@@ -103,7 +103,7 @@ static __inline__ struct page *DRM(do_vm_nopage)(struct vm_area_struct *vma,
 
                DRM_DEBUG("baddr = 0x%lx page = 0x%p, offset = 0x%lx, count=%d\n",
                          baddr, __va(agpmem->memory->memory[offset]), offset,
-                         atomic_read(&page->count));
+                         page_count(page));
 
                return page;
         }
index 221ceb6..9ad49c0 100644 (file)
@@ -68,7 +68,7 @@ static unsigned long DRM(ati_alloc_pcigart_table)( void )
        page = virt_to_page( address );
 
        for ( i = 0 ; i < ATI_PCIGART_TABLE_PAGES ; i++, page++ ) {
-               atomic_inc( &page->count );
+               get_page(page);
                SetPageReserved( page );
        }
 
@@ -85,7 +85,7 @@ static void DRM(ati_free_pcigart_table)( unsigned long address )
        page = virt_to_page( address );
 
        for ( i = 0 ; i < ATI_PCIGART_TABLE_PAGES ; i++, page++ ) {
-               atomic_dec( &page->count );
+               __put_page(page);
                ClearPageReserved( page );
        }
 
index 5b97598..a495884 100644 (file)
@@ -103,7 +103,7 @@ static __inline__ struct page *DRM(do_vm_nopage)(struct vm_area_struct *vma,
 
                DRM_DEBUG("baddr = 0x%lx page = 0x%p, offset = 0x%lx, count=%d\n",
                          baddr, __va(agpmem->memory->memory[offset]), offset,
-                         atomic_read(&page->count));
+                         page_count(page));
 
                return page;
         }