patch-2.4.0-test11 linux/Documentation/cachetlb.txt
Next file: linux/Documentation/dnotify.txt
Previous file: linux/Documentation/Configure.help
Back to the patch index
Back to the overall index
- Lines: 36
- Date:
Thu Nov 9 15:57:40 2000
- Orig file:
v2.4.0-test10/linux/Documentation/cachetlb.txt
- Orig date:
Tue Oct 31 12:42:25 2000
diff -u --recursive --new-file v2.4.0-test10/linux/Documentation/cachetlb.txt linux/Documentation/cachetlb.txt
@@ -305,19 +305,23 @@
If D-cache aliasing is not an issue, this routine may
simply be defined as a nop on that architecture.
- TODO: If we set aside a few bits in page->flags as
- "architecture private", these interfaces could
- be implemented much more efficiently. This would
- allow one to "defer" (perhaps indefinitely) the
- actual flush if there are currently no user processes
- mapping this page.
+ There is a bit set aside in page->flags (PG_arch_1) as
+ "architecture private". The kernel guarentees that,
+ for pagecache pages, it will clear this bit when such
+ a page first enters the pagecache.
- The idea is, first at flush_dcache_page() time, if
- page->mapping->i_mmap is an empty list, just mark
- one of the architecture private page flag bits.
- Later, in update_mmu_cache(), a check could be made
- of this flag bit, and if set the flush is done
- and the flag bit is cleared.
+ This allows these interfaces to be implemented much more
+ efficiently. It allows one to "defer" (perhaps indefinitely)
+ the actual flush if there are currently no user processes
+ mapping this page. See sparc64's flush_dcache_page and
+ update_mmu_cache implementations for an example of how to go
+ about doing this.
+
+ The idea is, first at flush_dcache_page() time, if
+ page->mapping->i_mmap{,_shared} are empty lists, just mark the
+ architecture private page flag bit. Later, in
+ update_mmu_cache(), a check is made of this flag bit, and if
+ set the flush is done and the flag bit is cleared.
XXX Not documented: flush_icache_page(), need to talk to Paul
Mackerras, David Mosberger-Tang, et al.
FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)