From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Chinner Subject: Re: [BUG] remount ro on loopback mount leaves unmountable filesystem behind Date: Tue, 13 May 2008 22:07:10 +1000 Message-ID: <20080513120710.GA155679365@sgi.com> References: <20080513085047.GY155679365@sgi.com> <20080513102340.GA15112@infradead.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: David Chinner , lkml , linux-fsdevel , util-linux-ng@vger.kernel.org To: Christoph Hellwig Return-path: Received: from relay2.sgi.com ([192.48.171.30]:49242 "EHLO relay.sgi.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751747AbYEMMHX (ORCPT ); Tue, 13 May 2008 08:07:23 -0400 Content-Disposition: inline In-Reply-To: <20080513102340.GA15112@infradead.org> Sender: linux-fsdevel-owner@vger.kernel.org List-ID: On Tue, May 13, 2008 at 06:23:40AM -0400, Christoph Hellwig wrote: > On Tue, May 13, 2008 at 06:50:47PM +1000, David Chinner wrote: > > Same thing, but remounting the loop filesystem readonly > > before unmounting: > > > > $ mount -t xfs /dev/sdb6 /mnt/scratch > > $ mkdir /mnt/scratch/mnt > > $ touch /mnt/scratch/img > > $ mkfs.xfs -f -d file,name=/mnt/scratch/img,size=1g > > $ mount -t xfs -o loop /mnt/scratch/img /mnt/scratch/mnt > > $ mount -t xfs -o remount,ro /mnt/scratch/img /mnt/scratch/mnt > > $ umount /mnt/scratch/mnt > > $ umount /mnt/scratch > > umount: /mnt/scratch: device is busy > > umount: /mnt/scratch: device is busy > > This is a problem in mount, no the kernel. Before the remount the > /etc mtab looks something like this: > > /qemu/test.img /mnt xfs rw,loop=/dev/loop0 0 0 > > and after it looks something like this: > > /qemu/test.img /mnt xfs ro 0 0 > > As a workaround do a losetup -d /dev/loop0 after unmounting the > filesystem. Hmmm - I even considered that and tried a '-o remount,ro,loop' but that obviously doesn't work with dynamic loop device instantiation, either. /me didn't read all the way to the bottom of the extremely verbose mount man page so didn't find the bit about losetup -d.... Anyway, I'll hard code loop device numbers into the script so I can just forget about this problem. Thanks, Christoph. Cheers, Dave. -- Dave Chinner Principal Engineer SGI Australian Software Group