X-Git-Url: https://git.openpandora.org/cgi-bin/gitweb.cgi?p=pandora-kernel.git;a=blobdiff_plain;f=mm%2Fhighmem.c;h=09fc744d104e4b0417d7c183f5eb485105ca7524;hp=57d82c6250c308e36089f81a8e902b729391335e;hb=4cecd7e369e1b252db1d64451462221b362eed1c;hpb=fb38f9b8fe98a9c1f6b1e57d1b08b1102b293929 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;