summaryrefslogtreecommitdiffstats
path: root/include/linux/highmem.h
diff options
context:
space:
mode:
authorRalf Baechle <ralf@linux-mips.org>2000-03-23 02:25:38 +0000
committerRalf Baechle <ralf@linux-mips.org>2000-03-23 02:25:38 +0000
commit16b5d462f73eb29d1f67fa01cc1ea66afdc72569 (patch)
tree5407bd573f4840e473ea27cbe61e5c7a07131fcd /include/linux/highmem.h
parentce8a076e11e7e5ee36007f9a3eee5bb3744cb8f6 (diff)
Merge with Linux 2.3.99-pre2.
Diffstat (limited to 'include/linux/highmem.h')
-rw-r--r--include/linux/highmem.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/include/linux/highmem.h b/include/linux/highmem.h
index 2e31d77f2..3049ad259 100644
--- a/include/linux/highmem.h
+++ b/include/linux/highmem.h
@@ -29,6 +29,15 @@ extern inline unsigned int nr_free_highpages(void) { return 0; }
#endif /* CONFIG_HIGHMEM */
/* when CONFIG_HIGHMEM is not set these will be plain clear/copy_page */
+extern inline void clear_user_highpage(struct page *page, unsigned long vaddr)
+{
+ unsigned long kaddr;
+
+ kaddr = kmap(page);
+ clear_user_page((void *)kaddr, vaddr);
+ kunmap(page);
+}
+
extern inline void clear_highpage(struct page *page)
{
unsigned long kaddr;
@@ -64,6 +73,17 @@ extern inline void memclear_highpage_flush(struct page *page, unsigned int offse
kunmap(page);
}
+extern inline void copy_user_highpage(struct page *to, struct page *from, unsigned long vaddr)
+{
+ unsigned long vfrom, vto;
+
+ vfrom = kmap(from);
+ vto = kmap(to);
+ copy_user_page((void *)vto, (void *)vfrom, vaddr);
+ kunmap(from);
+ kunmap(to);
+}
+
extern inline void copy_highpage(struct page *to, struct page *from)
{
unsigned long vfrom, vto;