]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - Documentation/cachetlb.txt
Merge master.kernel.org:/pub/scm/linux/kernel/git/jejb/scsi-misc-2.6
[mv-sheeva.git] / Documentation / cachetlb.txt
index 1f312a9893d91e7d2b57ebf729e1989d2aaf5fa8..53245c429f7d9f13999803ea4ced0813437fceb5 100644 (file)
@@ -371,6 +371,18 @@ maps this page at its virtual address.
        architectures).  For incoherent architectures, it should flush
        the cache of the page at vmaddr in the current user process.
 
        architectures).  For incoherent architectures, it should flush
        the cache of the page at vmaddr in the current user process.
 
+  void flush_kernel_dcache_page(struct page *page)
+       When the kernel needs to modify a user page is has obtained
+       with kmap, it calls this function after all modifications are
+       complete (but before kunmapping it) to bring the underlying
+       page up to date.  It is assumed here that the user has no
+       incoherent cached copies (i.e. the original page was obtained
+       from a mechanism like get_user_pages()).  The default
+       implementation is a nop and should remain so on all coherent
+       architectures.  On incoherent architectures, this should flush
+       the kernel cache for page (using page_address(page)).
+
+
   void flush_icache_range(unsigned long start, unsigned long end)
        When the kernel stores into addresses that it will execute
        out of (eg when loading modules), this function is called.
   void flush_icache_range(unsigned long start, unsigned long end)
        When the kernel stores into addresses that it will execute
        out of (eg when loading modules), this function is called.