Re: 2.6.11-rc2-mm1

From: Evgeniy Polyakov
Date: Tue Jan 25 2005 - 11:02:51 EST


On Tue, 2005-01-25 at 16:34 +0100, Bartlomiej Zolnierkiewicz wrote:

> > There are no places like
> > lock a
> > lock b
> > unlock a
> > unlock b
> >
> > and if they are, then I'm completely wrong.
> >
> > What you see is only following:
> >
> > place 1:
> > lock a
> > lock b
> > unlock b
> > lock c
> > unlock c
> > unlock a
> >
> > place 2:
> > lock b
> > lock a
> > unlock a
> > lock c
> > unlock c
> > unlock b
>
> Ugh, now think about that:
>
> CPU0 CPU1
> place1: place2:
> lock a lock b
> < guess what happens here :-) >
> lock b lock a
> ... ...

:) he-he, such place are in add and remove routings, and they can not be
run simultaneously
in different CPUs.

And in other places they should go through the same lock(sdev or chain):
like
lock sdev_lock
lock chain
unclok chain
lock logic
unlock logic
unlock sdev_lock


lock sdev_lock
lock logic
unlock logic
lock chain
unclok chain
unlock sdev_lock

--
Evgeniy Polyakov

Crash is better than data corruption -- Arthur Grabowski

Attachment: signature.asc
Description: This is a digitally signed message part