drm_compat: remove kmap_atomic_prot_pfn()

This function is unused, and yet creates build problems: the symbol
init_mm is not exported by the latest -rc kernels and I don't believe it
ever will be. Even CONFIG_UNUSED_SYMBOLS does not provide it anymore.

If this function is needed in the future, it needs to be reinvented in
any case. So remove it.

Signed-off-by: Pekka Paalanen <pq@iki.fi>
main
Pekka Paalanen 2009-02-14 22:22:39 +02:00
parent e32aa6226f
commit 0054e14793
2 changed files with 0 additions and 50 deletions

View File

@ -730,35 +730,6 @@ void *idr_replace(struct idr *idp, void *ptr, int id)
EXPORT_SYMBOL(idr_replace); EXPORT_SYMBOL(idr_replace);
#endif #endif
#if defined(DRM_KMAP_ATOMIC_PROT_PFN)
#define drm_kmap_get_fixmap_pte(vaddr) \
pte_offset_kernel(pmd_offset(pud_offset(pgd_offset_k(vaddr), vaddr), (vaddr)), (vaddr))
void *kmap_atomic_prot_pfn(unsigned long pfn, enum km_type type,
pgprot_t protection)
{
enum fixed_addresses idx;
unsigned long vaddr;
static pte_t *km_pte;
static int initialized = 0;
if (unlikely(!initialized)) {
km_pte = drm_kmap_get_fixmap_pte(__fix_to_virt(FIX_KMAP_BEGIN));
initialized = 1;
}
pagefault_disable();
idx = type + KM_TYPE_NR*smp_processor_id();
vaddr = __fix_to_virt(FIX_KMAP_BEGIN + idx);
set_pte(km_pte-idx, pfn_pte(pfn, protection));
return (void*) vaddr;
}
EXPORT_SYMBOL(kmap_atomic_prot_pfn);
#endif
#ifdef DRM_FULL_MM_COMPAT #ifdef DRM_FULL_MM_COMPAT
#ifdef DRM_NO_FAULT #ifdef DRM_NO_FAULT
unsigned long drm_bo_vm_nopfn(struct vm_area_struct *vma, unsigned long drm_bo_vm_nopfn(struct vm_area_struct *vma,

View File

@ -338,27 +338,6 @@ typedef _Bool bool;
#endif #endif
#if (defined(CONFIG_X86) && defined(CONFIG_X86_32) && defined(CONFIG_HIGHMEM))
/*
* pgd_offset_k() is a macro that uses the symbol init_mm,
* check that it is available.
*/
# if ((LINUX_VERSION_CODE < KERNEL_VERSION(2,6,25)) || \
defined(CONFIG_UNUSED_SYMBOLS))
#define DRM_KMAP_ATOMIC_PROT_PFN
extern void *kmap_atomic_prot_pfn(unsigned long pfn, enum km_type type,
pgprot_t protection);
# else
#warning "init_mm is not available on this kernel!"
static inline void *kmap_atomic_prot_pfn(unsigned long pfn, enum km_type type,
pgprot_t protection)
{
/* stub */
return NULL;
}
# endif /* no init_mm */
#endif
#if !defined(flush_agp_mappings) #if !defined(flush_agp_mappings)
#define flush_agp_mappings() do {} while(0) #define flush_agp_mappings() do {} while(0)
#endif #endif