Re: [PATCH 1/2] md: make devices disappear when they are no longerneeded.

From: Al Viro
Date: Mon Nov 24 2008 - 01:38:21 EST


On Mon, Nov 24, 2008 at 03:47:51PM +1100, Neil Brown wrote:

> > What lifetime rules do you really want? I never liked the tricks pulled
> > by md wrt gendisk lifetimes and that might be a good time to sort that
> > out for good...
>
> I'm not sure what 'tricks' you are referring to. Can you elaborate?
>
> I want the gendisk to appear as soon as it is needed (not because I
> think that is necessarily a good idea, but it is legacy functionality that I
> don't think we can easily discard). And I want them to disappear when
> they contain no information and have nothing referring to them.

"Tricks" are about md_probe() and weird allocation time for these suckers.
But OK, legacy API is a good argument.

So you want the rules of the same nature as for module refcount? Then
the natural place to do that would be in failure exit of __blkdev_get()
and in normal path in blkdev_put() (for the final opener going away).

However, let's try to do it right - there's a *lot* of drivers where
we do no work in ->release() until it's the final one. It would be
nice to accomodate them as well while we are at it...
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/