patch-2.4.0-test11 linux/include/asm-ppc/highmem.h
Next file: linux/include/asm-ppc/hw_irq.h
Previous file: linux/include/asm-ppc/hardirq.h
Back to the patch index
Back to the overall index
- Lines: 56
- Date:
Wed Nov 8 19:01:34 2000
- Orig file:
v2.4.0-test10/linux/include/asm-ppc/highmem.h
- Orig date:
Sun Oct 8 10:50:35 2000
diff -u --recursive --new-file v2.4.0-test10/linux/include/asm-ppc/highmem.h linux/include/asm-ppc/highmem.h
@@ -49,19 +49,19 @@
#define KMAP_FIX_BEGIN (0xfe400000UL)
-extern unsigned long kmap_high(struct page *page);
+extern void *kmap_high(struct page *page);
extern void kunmap_high(struct page *page);
-extern inline unsigned long kmap(struct page *page)
+static inline void *kmap(struct page *page)
{
if (in_interrupt())
BUG();
if (page < highmem_start_page)
- return (unsigned long) page_address(page);
+ return page_address(page);
return kmap_high(page);
}
-extern inline void kunmap(struct page *page)
+static inline void kunmap(struct page *page)
{
if (in_interrupt())
BUG();
@@ -76,13 +76,13 @@
* be used in IRQ contexts, so in some (very limited) cases we need
* it.
*/
-extern inline unsigned long kmap_atomic(struct page *page, enum km_type type)
+static inline void *kmap_atomic(struct page *page, enum km_type type)
{
unsigned int idx;
unsigned long vaddr;
if (page < highmem_start_page)
- return (unsigned long) page_address(page);
+ return page_address(page);
idx = type + KM_TYPE_NR*smp_processor_id();
vaddr = KMAP_FIX_BEGIN + idx * PAGE_SIZE;
@@ -93,12 +93,13 @@
set_pte(kmap_pte+idx, mk_pte(page, kmap_prot));
flush_hash_page(0, vaddr);
- return vaddr;
+ return (void*) vaddr;
}
-extern inline void kunmap_atomic(unsigned long vaddr, enum km_type type)
+static inline void kunmap_atomic(void *kvaddr, enum km_type type)
{
#if HIGHMEM_DEBUG
+ unsigned long vaddr = (unsigned long) kvaddr;
unsigned int idx = type + KM_TYPE_NR*smp_processor_id();
if (vaddr < KMAP_FIX_BEGIN) // FIXME
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)