vinum and GEOM deadlock situation
Lukas Ertl
le at FreeBSD.org
Tue Feb 3 10:10:35 PST 2004
On Tue, 3 Feb 2004, Pawel Jakub Dawidek wrote:
> On Tue, Feb 03, 2004 at 04:56:23PM +0100, Lukas Ertl wrote:
> +> I'm running into a deadlock situation with the following scenario:
> +>
> +> Have a vinum RAID5 with several disks mounted, pull out one of the disks,
> +> shortly thereafter all I/O hangs.
> +>
> +> I managed to identify the deadlock, but couldn't come up with a fix yet.
> +>
> +> Let's see. Here's the backtrace of the vinum process:
> [...]
>
> Yes, the deadlock is obvious.
> [...]
> The problem here is, that dp->d_close() is called with the topology lock
> and d_close() is calling disk_destroy() and there topology lock should
> not be holded.
I also think that the only place where we can drop and re-grab the
topology lock is around the dp->d_close() call, but I'm not sure if there
are any side effects.
I'm gonna try it tomorrow.
regards,
le
--
Lukas Ertl http://mailbox.univie.ac.at/~le/
le at FreeBSD.org http://people.freebsd.org/~le/
More information about the freebsd-geom
mailing list