2004-10-22 15:44:21

by Christopher S. Aker

[permalink] [raw]
Subject: 2.6.9 - unable to unmount tmpfs

Kernel: 2.6.9 + skas3-v6 + cfq2 (from 2.6.9-ck1)

This box runs a bunch of UMLs -- I mount a tmpfs volume to hold the UML's memory file
each time an UML runs, and with 2.6.9 I'm unable to to unmount the tmpfs volume even
though there are no referring processes...

[root@host19 root]# lsof | grep "/linodes/holden/tmp"
[root@host19 root]#

[root@host19 root]# mount | grep holden
tmpfs on /linodes/holden/tmp type tmpfs (rw,size=64M,mode=0770)
tmpfs on /linodes/holden/tmp type tmpfs (rw,size=64M,mode=0770)
tmpfs on /linodes/holden/tmp type tmpfs (rw,size=64M,mode=0770)

[root@host19 root]# umount /linodes/holden/tmp
umount: /linodes/holden/tmp: device is busy
umount: /linodes/holden/tmp: device is busy
umount: /linodes/holden/tmp: device is busy

I assume this is a bug in 2.6.9 and not UML, possibly relating to ptrace (?) since
UML requires a kill -CONT <pid> to exit properly under 2.6.9 with any version of UML.
I tried creating a tmpfs mount and a few files within, and it unmounted correctly.

Thanks,
-Chris