public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Daniel Freedman <freedman@ccmr.cornell.edu>
To: linux-kernel@vger.kernel.org
Cc: Daniel Freedman <freedman@ccmr.cornell.edu>
Subject: NFS stale mount after chroot...
Date: Sun, 9 Dec 2001 20:57:08 -0500	[thread overview]
Message-ID: <20011209205707.A13073@ccmr.cornell.edu> (raw)


Hi,

It seems like I can generate reproducible stale NFS mounts by mounting
a partition, chroot'ing into that mount, immediately exiting the
chroot, and then finding myself unable to unmount the NFS partition.
I'm pretty sure I've confirmed that nothing is using the partition
(both with fuser and lsof) and even tried to force umount the
partition (which seems like it should definitely umount it, rather
than returning with the same "device is busy" errors), to no avail.
The only method which I've used that seems to be able to get rid of
this NFS mount, is to reboot the NFS client, and clearly that's not a
good one at all.  If I'm missing something obvious here, my apologies
in advance.  Also, if there's any further information I can provide,
I'd be happy to help.  The dump of my procedure follows this message.

Thanks again and take care,
Daniel


--------
On NFS client:
--------

freedman@feynman:/var/space/freedman$ ls -l
total 4
drwxr-xr-x    2 freedman arias        4096 Dec  9 14:46 node1
freedman@feynman:/var/space/freedman$ su
Password: 
feynman:/var/space/freedman# mount -t nfs newton:/var/tftpboot-NFS/ ./node1/
feynman:/var/space/freedman# mount
/dev/hda6 on / type ext2 (rw,errors=remount-ro,errors=remount-ro)
proc on /proc type proc (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/hda5 on /boot type ext2 (rw)
/dev/hda7 on /usr type ext2 (rw)
/dev/hda8 on /var type ext2 (rw)
/dev/hda12 on /var/space type ext2 (rw)
newton:/home on /home type nfs (rw,hard,bg,intr,rsize=8192,wsize=8192,addr=192.168.0.2)
newton:/var/tftpboot-NFS/ on /var/space/freedman/node1 type nfs (rw,addr=192.168.0.2)
feynman:/var/space/freedman# cd node1/
feynman:/var/space/freedman/node1# ls
bin  boot  cdrom  dev  etc  floppy  home  initrd  lib  mnt  opt  proc  root  sbin  tmp  usr  var  vmlinuz
feynman:/var/space/freedman/node1# cd ..
feynman:/var/space/freedman# chroot node1/
feynman:/# ls -l
total 84
drwxr-xr-x    2 45       45           4096 Dec  8 03:06 bin
drwxr-xr-x    2 45       45           4096 Dec 10 01:05 boot
drwxr-xr-x    2 45       45           4096 Dec  8 03:06 cdrom
drwxr-xr-x    5 45       45          20480 Dec  8 03:07 dev
drwxr-xr-x   38 45       45           4096 Dec 10 01:19 etc
drwxr-xr-x    2 45       45           4096 Dec  8 03:06 floppy
drwxrwsr-x    2 45       45           4096 Nov 28 10:25 home
drwxr-xr-x    2 45       45           4096 Dec  8 03:06 initrd
drwxr-xr-x    4 45       45           4096 Dec  8 03:06 lib
drwxr-xr-x    2 45       45           4096 Nov 28 10:25 mnt
drwxr-xr-x    2 45       45           4096 Dec  8 03:06 opt
drwxr-xr-x    2 45       45           4096 Nov 28 10:25 proc
drwxr-xr-x    2 45       45           4096 Dec  8 03:44 root
drwxr-xr-x    2 45       45           4096 Dec 10 01:05 sbin
drwxrwxrwt    2 45       45           4096 Dec 10 01:07 tmp
drwxr-xr-x   11 45       45           4096 Dec  8 18:34 usr
drwxr-xr-x   14 45       45           4096 Dec  9 22:44 var
lrwxrwxrwx    1 45       45             19 Dec  8 20:26 vmlinuz -> boot/vmlinuz-2.4.16
feynman:/# id
uid=0(root) gid=0(root) groups=0(root)
feynman:/# exit
exit
feynman:/var/space/freedman# mount
/dev/hda6 on / type ext2 (rw,errors=remount-ro,errors=remount-ro)
proc on /proc type proc (rw)
devpts on /dev/pts type devpts (rw,gid=5,mode=620)
/dev/hda5 on /boot type ext2 (rw)
/dev/hda7 on /usr type ext2 (rw)
/dev/hda8 on /var type ext2 (rw)
/dev/hda12 on /var/space type ext2 (rw)
newton:/home on /home type nfs (rw,hard,bg,intr,rsize=8192,wsize=8192,addr=192.168.0.2)
newton:/var/tftpboot-NFS/ on /var/space/freedman/node1 type nfs (rw,addr=192.168.0.2)
feynman:/var/space/freedman# cat /proc/mounts 
/dev/root.old /initrd cramfs rw 0 0
/dev/root / ext2 rw 0 0
proc /proc proc rw 0 0
devpts /dev/pts devpts rw 0 0
/dev/hda5 /boot ext2 rw 0 0
/dev/hda7 /usr ext2 rw 0 0
/dev/hda8 /var ext2 rw 0 0
/dev/hda12 /var/space ext2 rw 0 0
newton:/home /home nfs rw,v3,rsize=8192,wsize=8192,hard,intr,udp,lock,addr=newton 0 0
newton:/var/tftpboot-NFS/ /var/space/freedman/node1 nfs rw,v3,rsize=8192,wsize=8192,hard,udp,lock,addr=newton 0 0
feynman:/var/space/freedman# umount /var/space/freedman/node1/
umount: /var/space/freedman/node1: device is busy
feynman:/var/space/freedman# fuser ./node1/
feynman:/var/space/freedman# lsof|grep node1         
feynman:/var/space/freedman# umount /var/space/freedman/node1/
umount: /var/space/freedman/node1: device is busy
feynman:/var/space/freedman# umount -f /var/space/freedman/node1/
umount2: Device or resource busy
umount: /var/space/freedman/node1: Illegal seek
feynman:/var/space/freedman# 



-- 
Daniel A. Freedman
Laboratory for Atomic and Solid State Physics
Department of Physics
Cornell University

             reply	other threads:[~2001-12-10  1:57 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-10  1:57 Daniel Freedman [this message]
2001-12-10  2:18 ` NFS stale mount after chroot Daniel Freedman
2001-12-10 12:06 ` Anders Peter Fugmann
  -- strict thread matches above, loose matches on Subject: below --
2001-12-10  3:42 Tyler BIRD

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20011209205707.A13073@ccmr.cornell.edu \
    --to=freedman@ccmr.cornell.edu \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox