Alexander Viro wrote:
>
> On Tue, 12 Sep 2000, Daniel Phillips wrote:
>
> > Alexander Viro wrote:
> > >
> > > On Tue, 12 Sep 2000, Daniel Phillips wrote:
> > >
> > > > This is getblk, except for pages. It finds or sets up a page in a
> > > > mapping. It puts buffers on the page if necessary but doesn't cause
> > > > any I/O action.
> > >
> > > ... and it is absolutely meaningless for many filesystems. Try to define
> > > what it means for NFS, etc.
> >
> > Could you clarify, please? Does this mean that generic_file_read is
> > also meaningless for nfs? (It's used in nfs.)
>
> Erm? generic_file_read() is prefectly happy using ->readpage(). And
> frankly, I see no point in "put buffers on page if it's a block-based fs
> that uses buffer_heads, but don't map them" as a method. The rest of it
> (find/create) is done by grab_cache_page() and is completely independent
> from the fs type.
Err... I said: "This is getblk, except for pages. It finds or sets up
a page in a mapping. It puts buffers on the page if necessary but
doesn't cause any I/O action." Nothing about mapping. In fact what I
described is exactly grab_cache_page(), which I didn't know about. my
fault, and thanks.
I've got everything I need now to proceed... Oh, um, except for
block_write_full_page not calling my prepare_write: and commit_write:
functions (it calls it's own private versions). Is there a reason for
that?
If the overrides worked consistently I think generic_file_mmap would
also be working on tailmerged files right now. As it is, I'm punting
it.
--
Daniel
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]