Re: Mounting cd9660 multiple times gives EBUSY [Was: unionfs a little improvement]

From: Pawel Jakub Dawidek <pjd_at_FreeBSD.org>
Date: Wed, 18 Aug 2010 14:15:50 +0200
On Wed, Aug 18, 2010 at 12:48:53PM +0200, Ed Schouten wrote:
> Hi Daichi,
> 
> I think Keith Packard of Xorg once wrote a commit message along the
> lines of "5000 lines of code removed, feature added" This seems to be
> similar, albeit on a smaller scale. ;-)
> 
> Apart from this issue with unionfs, I am also experiencing another
> issue, where for some reason I cannot perform a second mount of the CD
> right after booting the system. Basically, my WIP FreeBSD boot CD does
> the following (but written in C):
> 
> 	mount -t cd9660 /dev/iso9660/freebsd /mnt
> 	mount -t tmpfs none /tmp
> 	mount -t unionfs /tmp /mnt
> 	mount -t devfs none /mnt/dev
> 	chroot /mnt /sbin/init
> 
> The first step fails with EBUSY. I use the following hack to get it
> working, but I don't think it's the proper way to solve it:

What you are trying to do here is to mount /dev/iso9660/freebsd for the
second time? This is not supported. The check is there to prevent doing
this, as it will panic on you when you try to unmount first mount (not
really a problem in your case, as the first mount is /, so you probably
don't want to unmount it, but it is a problem in general).

You should be able to reproduce the panic with your patch applied by
doing the following:

	# mount -t cd9660 /dev/iso9660/freebsd /mnt0
	# mount -t cd9660 /dev/iso9660/freebsd /mnt1
	# umount /mnt0

-- 
Pawel Jakub Dawidek                       http://www.wheelsystems.com
pjd_at_FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!

Received on Sun Aug 22 2010 - 09:05:40 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:06 UTC