[dm-devel] DMF_FREEING flag checking
Alasdair G Kergon
agk at redhat.com
Mon Mar 10 12:29:46 UTC 2008
On Mon, Mar 10, 2008 at 12:18:00PM +0000, Alasdair G Kergon wrote:
> The question is, are there any
> *actual* code paths which could lead to that happening, where existing
> locking/serialisation is inadequate?
The final dm_put that triggers the deletion (md->holders dropping to 0)
is in __hash_remove() while holding _hash_lock - so I don't think the dm_get()
calls you mention can run in parallel.
There are other dm_get() calls outside _hash_lock, but I think the
argument is that the code paths containing them can't be reached
if the final dm_put() has started - they all require something to have
the device open.
Alasdair
--
agk at redhat.com
More information about the dm-devel
mailing list