This is very similar to bug 6285758 but that is claimed to be fixed om snv_18
Attempting to rename a zfs filesystem that is both busy and has children leads to the children being unmounted. Here is a test case:
v4u-880m-gmp03 69 # zfs create tank/one
v4u-880m-gmp03 70 # zfs create tank/two
v4u-880m-gmp03 71 # zfs create tank/two/three
v4u-880m-gmp03 72 # cd /tank/two
v4u-880m-gmp03 73 # touch three/four.file
v4u-880m-gmp03 74 # ls -l three/four.file
-rw-r--r-- 1 root root 0 May 21 22:52 three/four.file
v4u-880m-gmp03 75 # zfs rename tank/two tank/one/two
cannot unmount '/tank/two': Device busy
v4u-880m-gmp03 76 # ls -l three
total 0
v4u-880m-gmp03 77 # df -h three
Filesystem size used avail capacity Mounted on
tank/two 134G 25K 134G 1% /tank/two
v4u-880m-gmp03 78 # zfs mount -a
v4u-880m-gmp03 79 # df -h three
Filesystem size used avail capacity Mounted on
tank/two/three 134G 24K 134G 1% /tank/two/three
v4u-880m-gmp03 80 #