PATCH: Improvement in shrink_mmap

From: Juan J. Quintela (quintela@fi.udc.es)
Date: Wed Jun 14 2000 - 17:19:41 EST


Hi
        The actual code in shrink mmap waits for all the pages after
        we pass priority pages. The idea is to wait only each
        priority pages. I have had such a patch for a while here, it
        appears to work here. I send it to Linus in the middle of a
        bigger patch that was not accepted and I forgot to send only
        this two-liner.

Later, Juan.

diff -urN --exclude-from=/home/lfcia/quintela/work/kernel/exclude ac18/mm/filemap.c prueba/mm/filemap.c
--- ac18/mm/filemap.c Tue Jun 13 23:18:35 2000
+++ prueba/mm/filemap.c Thu Jun 15 00:18:33 2000
@@ -351,7 +351,9 @@
                  * of zone - it's old.
                  */
                 if (page->buffers) {
- int wait = ((gfp_mask & __GFP_IO) && (nr_dirty-- < 0));
+ int wait = ((gfp_mask & __GFP_IO) && (nr_dirty-- <= 0));
+ if(nr_dirty < 0)
+ nr_dirty = priority;
                         if (!try_to_free_buffers(page, wait))
                                 goto unlock_continue;
                         /* page was locked, inode can't go away under us */

-- 
In theory, practice and theory are the same, but in practice they 
are different -- Larry McVoy

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Thu Jun 15 2000 - 21:00:32 EST