* aa-150-read_write_tweaks
@ 2002-03-20 4:00 Andrew Morton
0 siblings, 0 replies; only message in thread
From: Andrew Morton @ 2002-03-20 4:00 UTC (permalink / raw)
To: lkml
- Don't do flush_page_to_ram() on the page fault-in path. That's
handled in mm/memory.c, and filemap.c doesn't need to do it.
- In generic_file_write(), only set the page's Referenced bit once,
when the write touches the start of the page. This is a
microoptimisation. Seemingly a buggy one too - lseek exists...
=====================================
--- 2.4.19-pre3/mm/filemap.c~aa-150-read_write_tweaks Tue Mar 19 19:49:02 2002
+++ 2.4.19-pre3-akpm/mm/filemap.c Tue Mar 19 19:49:02 2002
@@ -1968,7 +1968,6 @@ success:
* and possibly copy it over to another page..
*/
mark_page_accessed(page);
- flush_page_to_ram(page);
return page;
no_cached_page:
@@ -3089,8 +3088,15 @@ generic_file_write(struct file *file,con
}
unlock:
kunmap(page);
+
+ /*
+ * Mark the page accessed if we wrote the
+ * beginning or we just did an lseek.
+ */
+ if (!offset || !file->f_reada)
+ SetPageReferenced(page);
+
/* Mark it unlocked again and drop the page.. */
- SetPageReferenced(page);
UnlockPage(page);
page_cache_release(page);
-
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2002-03-20 4:04 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2002-03-20 4:00 aa-150-read_write_tweaks Andrew Morton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox