Re: [PATCH 2.4.0-test8] mm/filemap.c

From: Juan J. Quintela (quintela@fi.udc.es)
Date: Thu Sep 14 2000 - 12:05:20 EST


>>>>> "bill" == Bill Wendling <wendling@ganymede.isdn.uiuc.edu> writes:

Hi

        Linus, please don't apply.

bill> - The `head = &mapping->pages;' statement is useless inside the
bill> repeat, since head isn't modified inside the loop.

No, but we sleep inside the loop, and while we sleep, we don't have
locked the page cache :((((

bill> - The `curr = curr->next;' statement doesn't need to be executed
bill> if the repeat is taken. I changed the while() into a for() loop
bill> to accomodate this better.

If you think that the for is nicer (I think that the while is easier
to read, but that is question of taste).

Later, Juan.

bill> Share and enjoy!

bill> --
bill> || Bill Wendling wendling@ganymede.isdn.uiuc.edu

bill> --- linux-2.4.0-test8/mm/filemap.c Sat Sep 9 02:35:09 2000
bill> +++ linux-2.4.0-test8-new/mm/filemap.c Thu Sep 14 03:14:06 2000
bill> @@ -189,16 +189,14 @@
bill> unsigned long start;
 
bill> start = (lstart + PAGE_CACHE_SIZE - 1) >> PAGE_CACHE_SHIFT;
bill> + head = &mapping->pages;
 
bill> repeat:
bill> - head = &mapping->pages;
bill> spin_lock(&pagecache_lock);
bill> - curr = head->next;
bill> - while (curr != head) {
bill> + for (curr = head->next; curr != head; curr = curr->next) {
bill> unsigned long offset;
 
bill> page = list_entry(curr, struct page, list);
bill> - curr = curr->next;
bill> offset = page->index;
 
bill> /* Is one of the pages to truncate? */

-- 
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.kernel.org
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Fri Sep 15 2000 - 21:00:24 EST