On Oct 15, 2011, at 3:30 AM, matthew green wrote: > >> Module Name: src >> Committed By: hannken >> Date: Fri Oct 14 09:23:31 UTC 2011 >> >> Modified Files: >> src/sys/compat/linux/common: linux_file.c linux_file64.c linux_ioctl.c >> linux_misc.c >> src/sys/compat/linux32/common: linux32_dirent.c >> src/sys/compat/ossaudio: ossaudio.c >> src/sys/compat/svr4: svr4_fcntl.c >> src/sys/compat/svr4_32: svr4_32_fcntl.c >> src/sys/dev: ccd.c cgd.c vnd.c >> src/sys/dev/dm: dm_target_linear.c dm_target_snapshot.c >> dm_target_stripe.c >> src/sys/dev/raidframe: rf_copyback.c rf_disks.c rf_reconstruct.c >> src/sys/kern: kern_verifiedexec.c vfs_mount.c vfs_syscalls.c >> vfs_vnops.c vnode_if.src >> src/sys/uvm: uvm_mmap.c >> >> Log Message: >> Change the vnode locking protocol of VOP_GETATTR() to request at least >> a shared lock. Make all calls outside of file systems respect it. >> >> The calls from file systems need review. >> >> No objections from tech-kern. > > does this require a kernel bump? if filesystem code needs to > change, even if API signatures haven't, i would say so? > > thanks.
No, we don't check vnode locks for VOP_GETATTR() anywhere as its lock requirements were unspecified -- all changes are like + vn_lock(vp, LK_SHARED | LK_RETRY); error = VOP_GETATTR(vp, &va, cred); + VOP_UNLOCK(vp); -- Juergen Hannken-Illjes - hann...@eis.cs.tu-bs.de - TU Braunschweig (Germany)