On Wed, 2005-02-16 at 11:43, Dave Kleikamp wrote:
> On Wed, 2005-02-16 at 11:28 -0800, Badari Pulavarty wrote:
> > On Wed, 2005-02-16 at 11:09, Dave Kleikamp wrote:
> > > On Wed, 2005-02-16 at 10:37 -0800, Badari Pulavarty wrote:
> > > 
> > > > Yes. page->private is assumed for the bufferhead usage. Do you really
> > > > need for handling page->private for non-bufferhead usage ?
> > > 
> > > For what it's worth, I'm working on some changes to jfs that will use
> > > page->private for non-bufferhead usage for metadata, but I won't be
> > > using a generic writepage, so it's not an issue for me.
> > 
> > Nope. it would be an issue for you, since jfs uses mpage_writepages()
> > which uses the same code - which thinks page->private as bufferhead.
> 
> The patch I am working on will call mpage_writepages() for metadata, but
> will use my own writepage() rather than mpage_writepage(), and nothing
> in mpage_writepages() will use page->private.

Okay, that will work. Basically, you plan to call mpage_writepages()
with NULL as get_block(). Isn't it ?

> For normal data, page->private, if used at all, will be bufferheads.

Good.

> 
> > >
> > > mpage.c already assumes page->private implies bufferheads, so it's not
> > > completely generic.  Would implementing this as nobh_write_full_page, to
> > > complement block_write_full_page, make sense?
> > 
> > I guess, it can be done. So to really deal with this, we need to come
> > up with generic writepage/writepages interfaces which doesn't deal
> > with bufferheads.
> 
> I'm not sure how useful that would be.  Are there any users of a
> non-bufferhead page->private that want to call a generic writepage(s)?
> In other words, if a generic function is sufficient, you probably
> wouldn't be using page->private anyway.

This goes back to original question, is there a point in creating
new interfaces for writepage & writepages which doesn't assuming
page->private. So far, only users are ext2+nobh and JFS. But both
of them will not use page->private for anything else other than
bufferheads (if at all used). For both of these, the mpage_writepage()
I cooked up earlier would be good enough.

I guess, we will do it ONLY if someone really needs it. 

Thanks,
Badari

-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to