X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=mm%2Fhighmem.c;h=09fc744d104e4b0417d7c183f5eb485105ca7524;hb=9f249188a2927b7809ed790e4b568ea82039d919;hp=57d82c6250c308e36089f81a8e902b729391335e;hpb=62d7a2927f99be77cfb0ad2ef778bf12ced01193;p=pandora-kernel.git diff --git a/mm/highmem.c b/mm/highmem.c index 57d82c6250c3..09fc744d104e 100644 --- a/mm/highmem.c +++ b/mm/highmem.c @@ -94,6 +94,19 @@ static DECLARE_WAIT_QUEUE_HEAD(pkmap_map_wait); do { spin_unlock(&kmap_lock); (void)(flags); } while (0) #endif +struct page *kmap_to_page(void *vaddr) +{ + unsigned long addr = (unsigned long)vaddr; + + if (addr >= PKMAP_ADDR(0) && addr < PKMAP_ADDR(LAST_PKMAP)) { + int i = (addr - PKMAP_ADDR(0)) >> PAGE_SHIFT; + return pte_page(pkmap_page_table[i]); + } + + return virt_to_page(addr); +} +EXPORT_SYMBOL(kmap_to_page); + static void flush_all_zero_pkmaps(void) { int i;