[dm-devel] Re: [RFC] Reverting "bd_mount_mutex" to "bd_mount_sem"
Arjan van de Ven
arjan at infradead.org
Tue Oct 10 15:19:05 UTC 2006
On Tue, 2006-10-10 at 20:34 +0530, Srinivasa Ds wrote:
> Eric Sandeen wrote:
> > Ingo Molnar wrote:
> >
> >> * Srinivasa Ds <srinivasa at in.ibm.com> wrote:
> >>
> >>
> >>> On debugging I found out that,"dmsetup suspend <device name>" calls
> >>> "freeze_bdev()",which locks "bd_mount_mutex" to make sure that no new
> >>> mounts happen on bdev until thaw_bdev() is called.
> >>> This "thaw_bdev()" is getting called when we resume the device
> >>> through "dmsetup resume <device-name>".
> >>> Hence we have 2 processes,one of which locks
> >>> "bd_mount_mutex"(dmsetup suspend) and Another(dmsetup resume) unlocks
> >>> it.
> >>>
> >> hm, to me this seems quite a fragile construct - even if the
> >> mutex-debugging warning is worked around by reverting to a semaphore.
> >>
> >> Ingo
> >>
> >
> > Ingo, what do you feel is fragile about this? It seems like this is a
> > reasonable way to go, except that maybe a down_trylock would be good if
> > a 2nd process tries to freeze while it's already frozen...
> >
> > Thanks,
> >
> > -Eric
> >
> Ingo, As per the discussion resending the patch with down_trylock.
Hi,
I still think that effectively exporting this semaphore to userspace is
a big design mistake; but at least it can't be a mutex for this reason
so the patch is sane in that regard...
Greetings,
Arjan van de Ven
More information about the dm-devel
mailing list