The vnode locking requirement currently allows to call VOP_GETATTR()
on an unlocked vnode.  This is orthogonal to all other operations that
read data or metadata and want at least a shared lock.  It also asks
for trouble as the attributes may change while the operation is in
progress.

With the attached diff the locking protocol requests at least a shared
lock and all calls to VOP_GETATTR() outside of file systems respect it.

The calls from file systems need review (NFS server is suspicious at least).

I will commit this diff around Oct 14 if noone objects.

--
Juergen Hannken-Illjes - [email protected] - TU Braunschweig (Germany)

Attachment: vop_getattr.diff
Description: Binary data

Reply via email to