tech-kern archive

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

Re: [PATCH] PUFFS backend allocation (round 3)



Chuck Silvers <chuq%chuq.com@localhost> wrote:

> but more fundamentally, since puffs code cannot prevent changes to the file
> in the underlying fs (ie. changes that don't go through puffs), any
> preallocation done by puffs can be undone before it does any good.
> the puffs code just needs to be fixed to handle such ENOSPC/EDQUOT errors
> while flushing pages without hanging.  NFS has the same fundamental issue
> but I suspect its error handling is better.

But that means write returns success and we discard the data later,
right? 

> you would need to flush the
> dirty pages (with VOP_PUTPAGE()) to trigger that allocation, but that would
> cause every write to be synchronous, and if flushing the pages failed
> in this context it would likely trigger the same bug that you're trying to
> work around.

This is exactly what I understood a few minutes ago!

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
manu%netbsd.org@localhost


Home | Main Index | Thread Index | Old Index