Re: invalidate_inode_pages in 2.5.32/3

From: Andrew Morton (akpm@zip.com.au)
Date: Thu Sep 05 2002 - 15:37:59 EST


Trond Myklebust wrote:
>
> >>>>> " " == Andrew Morton <akpm@zip.com.au> writes:
>
> > It's a bit worrisome if NFS is dependent upon successful
> > pagecache takedown in invalidate_inode_pages.
>
> Why? We don't use all that buffer crap, so in principle
> invalidate_inode_page() is only supposed to fail for us if
>
> - page is locked (i.e. new read in progress or something like that)
> - page is refcounted (by something like mmap()).

    - someone took a temporary ref on the page.

    Possibly it is the deferred LRU addition code. Try running
    lru_add_drain() before invalidate_inode_pages().
 
> neither of which should be the case here.

Probably, it worked OK with the global locking because nobody was taking
a temp ref against those pages.

Please tell me exactly what semantics NFS needs in there. Does
truncate_inode_pages() do the wrong thing?
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Sat Sep 07 2002 - 22:00:26 EST