OpenSolaris

Printable Version Enter a New Search
Bug ID 6587837
Synopsis /etc/fs/zfs/mount -m prevents filesystem from being unmounted
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:zfs
Keywords
Responsible Engineer Timothy Haley
Reported Against
Duplicate Of
Introduced In solaris_nevada
Commit to Fix snv_83
Fixed In snv_83
Release Fixed solaris_nevada(snv_83) , solaris_10u6(s10u6_01) (Bug ID:2160996)
Related Bugs
Submit Date 1-August-2007
Last Update Date 13-February-2008
Description
with latest onnv builds, after mounting a zfs filesystem with /etc/fs/zfs/mount -m, there is no ways to umount the filesystem other rebooting the system. This behavior is different from /sbin/mount -m

1) /sbin/mount -m

bash-3.00# mkdir /mpt1
bash-3.00# zfs list
NAME     USED  AVAIL  REFER  MOUNTPOINT
foo      138K   262M    18K  /foo
foo/fs    18K   262M    18K  legacy
bash-3.00# mount -F zfs -m foo/fs /mpt1
bash-3.00# grep /mpt1 /etc/mnttab
bash-3.00# grep /mpt1 /etc/mnttab
bash-3.00# echo $?
1
bash-3.00# mkfile 10m /mpt1/f10
bash-3.00# zfs list
NAME     USED  AVAIL  REFER  MOUNTPOINT
foo     10.1M   252M    18K  /foo
foo/fs  10.0M   252M  10.0M  legacy  <== the space get changed as expected!
bash-3.00# mount -F zfs foo/fs /mpt1
mount failed: Device busy
bash-3.00# mkdir /mpt2
bash-3.00# mount -F zfs foo/fs /mpt2
mount failed: Device busy
bash-3.00# pwd
/
bash-3.00# mount -F zfs foo/fs /mpt2
mount failed: Device busy
bash-3.00# umount /mpt1
umount: warning: /mpt1 not in mnttab
bash-3.00# umount -f /mpt1
umount: warning: /mpt1 not in mnttab
umount: /mpt1 not mounted
bash-3.00# mount -F zfs foo/fs /mpt2
bash-3.00# echo $?
0
bash-3.00# zfs create -o mountpoint=legacy foo/fs1
bash-3.00# mount -F zfs foo/fs1 /mpt1
bash-3.00# zfs mount
foo                             /foo
foo/fs                          /mpt2
foo/fs1                         /mpt1

From the above commands, we can observe that foo/fs can get umounted from /mpt1 and then is mounted to /mpt2

2) /etc/fs/zfs/mount -m 

bash-3.00# zfs list
NAME      USED  AVAIL  REFER  MOUNTPOINT
foo       183K   262M    18K  /foo
foo/fs     18K   262M    18K  legacy
foo/fs1    18K   262M    18K  legacy
bash-3.00# mkdir /mpt1 /mpt2
bash-3.00# /etc/fs/zfs/mount -m foo/fs /mpt1
bash-3.00# grep /mpt1 /etc/mnttab
bash-3.00# echo $?
1
bash-3.00# mkfile 10m /mpt1/f10
bash-3.00# zfs list
NAME      USED  AVAIL  REFER  MOUNTPOINT
foo      10.2M   252M    18K  /foo
foo/fs   10.0M   252M  10.0M  legacy <== space gets changed as expected.
foo/fs1    18K   252M    18K  legacy
bash-3.00# /etc/fs/zfs/mount foo/fs /mpt1
mount failed: Device busy
bash-3.00# /etc/fs/zfs/mount foo/fs1 /mpt1
mount failed: Device busy
bash-3.00# /etc/fs/zfs/mount foo/fs /mpt2
mount failed: Device busy
bash-3.00# pwd
/
bash-3.00# /etc/fs/zfs/mount foo/fs /mpt2
mount failed: Device busy
bash-3.00# /etc/fs/zfs/umount /mpt1
cannot unmount '/mpt1': not currently mounted
bash-3.00# /etc/fs/zfs/umount -f /mpt1
cannot unmount '/mpt1': not currently mounted
bash-3.00# /etc/fs/zfs/mount foo/fs /mpt2
mount failed: Device busy
bash-3.00# /etc/fs/zfs/mount foo/fs /mpt2
mount failed: Device busy
bash-3.00# /etc/fs/zfs/mount foo/fs1 /mpt1
mount failed: Device busy
bash-3.00# /etc/fs/zfs/mount foo/fs1 /mpt1
mount failed: Device busy
bash-3.00# /etc/fs/zfs/mount foo/fs /mpt2
mount failed: Device busy

From above output of 2), we can found that /etc/fs/zfs/mount cannot behaved as that of /sbin/mount
Work Around
N/A
Comments
N/A