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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, 6 May 2006 11:00:44 -0500
Michael Halcrow <[email protected]> wrote:

> On Fri, May 05, 2006 at 07:21:48PM -0700, Andrew Morton wrote:
> > > On Fri, 2006-05-05 at 10:22 -0500, Dave Kleikamp wrote:
> > > > I understand this comes from the FiST package.  In that code,
> > > > there is a comment in one of these functions explaining the
> > > > second read.  It would be nice to have that comment in here too:
> > > > 
> > > >    /*
> > > >     * call readpage() again if we returned from wait_on_page with a
> > > >     * page that's not up-to-date; that can happen when a partial
> > > >     * page has a few buffers which are ok, but not the whole
> > > >     * page.
> > > >     */
> ...
> > And why doesn't it cause do_generic_mapping_read() and
> > page_cache_read() to fail?
> > 
> > This is all raher fishy.
> 
> I asked Erez about this; I will try to accurately summarize his
> response. He indicated that, about 5 or so years ago, when ext2/3's
> block size was set to 1K or 2K, but the page size was 4K, they found
> that it was possible to get a page which had some of the blocks in the
> bufcache, while other blocks were not.

hm, OK, I'm not sure that Linux buffered file contents in that manner in
that timeframe.  Maybe it did, before my time..

> Their solution at the time was to just read again, and that seemed to
> fix the problem for them. It was not obvious as to why things were
> happening that way, and it may be the case that the second read is no
> longer necessary in the current kernel.
> 

Yeah, it shouldn't be needed now.  It'd be a howler of a bug if it is
needed.

Note that the pagefault handlers do still do a second readpage().  The
comment implies that this is an open-coded attempt to recover from an I/O
error.  I do recall that a year or so ago we discussed taking out that
second readpage attempt, but Linus had good-sounding reasons for keeping
it.  But I forget what they were.  Perhaps he can remind me?

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux