Re: [PATCH 10/13: eCryptfs] Mmap operations

Michael Halcrow
2006-06-28T15:02:43Z

On Wed, Jun 28, 2006 at 05:16:34PM +0300, Pekka Enberg wrote:
> On 5/13/06, Phillip Hellewell <phillip@hellewell.homeip.net> wrote:
> >+static struct page *ecryptfs_get1page(struct file *file, int index)
> >+{
> >+ struct page *page;
> >+ struct dentry *dentry;
> >+ struct inode *inode;
> >+ struct address_space *mapping;
> >+
> >+ dentry = file->f_dentry;
> >+ inode = dentry->d_inode;
> >+ mapping = inode->i_mapping;
> >+ page = read_cache_page(mapping, index,
> >+ (filler_t *)mapping->a_ops->readpage,
> >+ (void *)file);
> >+ if (IS_ERR(page))
> >+ goto out;
> >+ wait_on_page_locked(page);
>
> Why no check for PageUptodate?

It happens, but a bit later. ecryptfs_get1page() is called from
write_zeros(). Then write_zeros() calls ecryptfs_prepare_write(),
which does a PageUptodate() check.

Mike