Hello, I'm running Solaris Express build 27a on an amd64 machine and fuser(1M) isn't behaving as I would expect for zfs filesystems. Various google and opensolaris.org searches didn't turn up anything on the subject, so I thought I'd ask the experts. The specific problem is that "fuser -c /some_zfs_filesystem" reports nothing when I think it should be reporting at least one PID with the t or c and m codes.
Some system info: #uname -a ; isainfo -kv ; isainfo -nv SunOS video.wossname.net 5.11 snv_27 i86pc i386 i86pc 64-bit amd64 kernel modules 64-bit amd64 applications sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc cx8 tsc fpu ZFS info. We're interested in /opt here. #zpool list NAME SIZE USED AVAIL CAP HEALTH ALTROOT tank 52.5G 3.62G 48.9G 6% ONLINE - #zfs list NAME USED AVAIL REFER MOUNTPOINT tank 3.62G 48.5G 8K /tank tank/home 2.43G 48.5G 2.43G /export/home tank/opt 1009M 48.5G 1009M /opt tank/ora00 8K 48.5G 8K /ora00 tank/ora01 8K 48.5G 8K /ora01 tank/pkg 6.45M 48.5G 6.45M /usr/pkg tank/pkgsrc 199M 48.5G 199M /usr/pkgsrc Running two very similar things from different filesystems: #pgrep -lf info 20412 /opt/csw/bin/info 20617 /usr/sfw/bin/info #pgrep -lf info | cut -d' ' -f 2 | xargs ldd /opt/csw/bin/info: libncurses.so.5 => /opt/csw/lib/libncurses.so.5 libintl.so.3 => /opt/csw/lib/libintl.so.3 libiconv.so.2 => /opt/csw/lib/libiconv.so.2 libc.so.1 => /lib/libc.so.1 libm.so.2 => /lib/libm.so.2 /usr/sfw/bin/info: libcurses.so.1 => /lib/libcurses.so.1 libc.so.1 => /lib/libc.so.1 libm.so.2 => /lib/libm.so.2 /usr/sfw/bin is on ufs, /opt/csw/bin on zfs: #mount -p | egrep $(df -k /opt/csw/bin/info /usr/sfw/bin/info |\ /usr/xpg4/bin/awk '/\//{d[++c]=$1}END{printf("(");\ for(i=1;i<=c;i++)printf("%s%s",d[i],(i<c?"|":")\n"));}') /dev/dsk/c1d0s0 - / ufs - no rw,intr,largefiles,logging,xattr,onerror=panic tank/opt - /opt zfs - no rw,devices,setuid,exec,atime So, I expect that "fuser -c" should show PID 20617 and 20412 for / and 20412 for /opt. However: #fuser -c / /: [lots of other PIDs] 20617tm [others] 20412cm [others] #fuser -c /opt /opt: # Nothing at all for /opt. So it's safe to unmount? Nope: #umount /opt cannot unmount '/opt': Device busy #zfs umount /opt cannot unmount '/opt': Device busy #kill 20412 #zfs umount /opt # Has anyone else seen something like this? Thank you, -Ben _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://opensolaris.org/mailman/listinfo/zfs-discuss -- This message posted from opensolaris.org _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss