> YAMAMOTO Takashi <[email protected]> wrote:
> 
>> i don't think it fixes the problem as VOPs can release the lock
>> before the completion of async PUFFS_VN_SETATTR.
> 
> It just prevents puffs_vnop_getattr to call uvm_vnp_setattr with a stall
> value between the time dosetattr sends PUFFS_VN_SETATTR and the time it
> calls uvm_vnp_setattr. This is enough to work around the issue if the
> file server does not reorder requests.

but file servers can reorder requests, can't they?

>> besides that, non-diagnostic uses of VOP_ISLOCKED are mostly considered bugs.
> 
> The problem is that VOP_GETATTR does not specify whether the vnode
> should be locked or not. Some callers lock and others do not, therefore
> the test.

besides that it's strongly discouraged way (i'd call it bug) to use locks,
the test seems broken when called with LK_SHARED held.

YAMAMOTO Takashi

> 
> -- 
> Emmanuel Dreyfus
> http://hcpnet.free.fr/pubz
> [email protected]

Reply via email to