Hans Reiser <[EMAIL PROTECTED]> writes:

> Ok, I agree bytes are precious, and this seems like the right answer, either get it
> from the buffer_head, or if there is no buffer head, then put it elsewhere using
> that pointer.  That leaves the following questions though: how does one know whether
> it points to a buffer head or the something else, and what happens when it goes from
> having a buffer head to not having one---does one have to write code for dealing
> with that---I hate complexity.  I must think about it.

Right. Probably the simplest solution is to the say the buffer_head
has an elevated count if you need it not to disapear magically.

> > Though I don't think copy_on_write and (whatever else it wants)
> > are necessarily hot ideas.  There need to be some constraints.
> 
> Why don't you like copy_on_write?  I thought it was a proven OS design meme?
> It could make managing multiple commits with overlapping buffers cleaner.

Not in general.  I just don't like copy_on_write in the page ager,
or implicitly in kernel space structures.  

But my primary objection was no relevance to the function of writing
a page to the disk.  Deciding to close a transaction is something
I can see happening.  Deciding to open an X window, and play a
DVD movie is not, totaly irrelevant. . .

Eric

Reply via email to