freebsd-dev/sys/cddl
Davide Italiano 2f9e29745c Fix a panic in zfs_rename().
this is due to a wrong dereference of a vnode when it's not locked and
can be (potentially) recycled. 'sdvp' cannot be locked on zfs_rename()
entry point because the VFS can't be sure that this scenario is
LOR-free (it might violate the parent->child lock acquisition rule).
Dereference 'tdvp' instead, which is already locked on entry, and access
'sdvp' fields only when it's safe, i.e. under ZFS_ENTER scope.

While at it, remove the usage of VOP_REALVP, as long as this is a NOP
on FreeBSD.

Discussed with:	avg
Reviewed by:	pjd
2014-04-13 01:15:37 +00:00
..
boot/zfs MFV r259170: 2014-01-01 00:45:28 +00:00
compat/opensolaris Rename global cnt to vm_cnt to avoid shadowing. 2014-03-22 10:26:09 +00:00
contrib/opensolaris Fix a panic in zfs_rename(). 2014-04-13 01:15:37 +00:00
dev Expose a few DTrace parameters as sysctls under kern.dtrace and add 2014-03-01 19:06:43 +00:00