After hitting this bug (yes, again and again) I had to unmount the broken file system and run fsck (twice). But then I apparently hit anoter bug (or a feature?) – I could not mount the file system back.
xeon# mount /dev/dsk/c2d0s3 /export/docs
mount: /dev/dsk/c2d0s3 is already mounted or /export/docs is busy
mount: /dev/dsk/c2d0s3 is already mounted or /export/docs is busy
Neither pwdx not lsof showed any processes using /export/docs. The solution was to recreate the directory:
xeon# rm -rf docs
xeon# mkdir docs
xeon# mount /dev/dsk/c2d0s3 /export/docs (after a loooong pause)
xeon# mount | fgrep docs
/export/docs on /dev/dsk/c2d0s3 read/write/setuid/devices/intr/largefiles/logging/xattr/onerror=panic/dev=1980043 on Tue Jul 1 01:07:08 2008
xeon# mkdir docs
xeon# mount /dev/dsk/c2d0s3 /export/docs (after a loooong pause)
xeon# mount | fgrep docs
/export/docs on /dev/dsk/c2d0s3 read/write/setuid/devices/intr/largefiles/logging/xattr/onerror=panic/dev=1980043 on Tue Jul 1 01:07:08 2008