aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation
diff options
context:
space:
mode:
authorRussell King <rmk@dyn-67.arm.linux.org.uk>2006-12-30 17:24:19 -0500
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-01-08 14:49:54 -0500
commita6f36be32622730710b2fadacb6e2649defa4371 (patch)
tree09d0f3ebe839b76373ee5ed4674fe305ad9ac256 /Documentation
parente47c222b22cd53c317a5573e1dc5f9e0cbd46380 (diff)
[ARM] pass vma for flush_anon_page()
Since get_user_pages() may be used with processes other than the current process and calls flush_anon_page(), flush_anon_page() has to cope in some way with non-current processes. It may not be appropriate, or even desirable to flush a region of virtual memory cache in the current process when that is different to the process that we want the flush to occur for. Therefore, pass the vma into flush_anon_page() so that the architecture can work out whether the 'vmaddr' is for the current process or not. Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'Documentation')
-rw-r--r--Documentation/cachetlb.txt5
1 files changed, 3 insertions, 2 deletions
diff --git a/Documentation/cachetlb.txt b/Documentation/cachetlb.txt
index 73e794f0ff09..debf6813934a 100644
--- a/Documentation/cachetlb.txt
+++ b/Documentation/cachetlb.txt
@@ -373,14 +373,15 @@ maps this page at its virtual address.
373 likely that you will need to flush the instruction cache 373 likely that you will need to flush the instruction cache
374 for copy_to_user_page(). 374 for copy_to_user_page().
375 375
376 void flush_anon_page(struct page *page, unsigned long vmaddr) 376 void flush_anon_page(struct vm_area_struct *vma, struct page *page,
377 unsigned long vmaddr)
377 When the kernel needs to access the contents of an anonymous 378 When the kernel needs to access the contents of an anonymous
378 page, it calls this function (currently only 379 page, it calls this function (currently only
379 get_user_pages()). Note: flush_dcache_page() deliberately 380 get_user_pages()). Note: flush_dcache_page() deliberately
380 doesn't work for an anonymous page. The default 381 doesn't work for an anonymous page. The default
381 implementation is a nop (and should remain so for all coherent 382 implementation is a nop (and should remain so for all coherent
382 architectures). For incoherent architectures, it should flush 383 architectures). For incoherent architectures, it should flush
383 the cache of the page at vmaddr in the current user process. 384 the cache of the page at vmaddr.
384 385
385 void flush_kernel_dcache_page(struct page *page) 386 void flush_kernel_dcache_page(struct page *page)
386 When the kernel needs to modify a user page is has obtained 387 When the kernel needs to modify a user page is has obtained