Re: xfrm_state locking regression...

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Herbert Xu
Date: Monday, September 22, 2008 - 4:50 pm

On Mon, Sep 22, 2008 at 04:01:14PM +0300, Timo Teräs wrote:

No that doesn't work.  Let's say we store the entry X in walk->state,
and we hold X as well as X->next.  Now X, X->next, and X->next->next
get deleted from the list.  What'll happen is that X and X->next
will stick around but X->next->next will be freed.  So when we
resume from X we'll dump X and X->next correctly, but then hit
X->next->next and be in the same shithole.

Really, the only way to do what you want here is to hold everything
from X to the very end of the list.  The problem with that is that
you can no longer drop the reference counts when we resume.

You can see why even if we only hold X and X->next.  Should X->next
be deleted from the list, when we resume from X we'll no longer be
able to drop the reference count on the original X->next since it
now points to a new entry.


I think this is a lot more efficient than storing every single
entry from X to the end of the list :)

Cheers,
-- 
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
xfrm_state locking regression..., David Miller, (Tue Sep 2, 7:51 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 2, 8:00 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 2, 10:01 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 2, 10:07 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 2, 10:23 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 2, 10:39 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 2, 10:39 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 2, 10:40 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 2, 10:45 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 2, 10:50 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 2, 11:10 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 2, 11:14 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 2, 11:27 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 2, 11:35 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 2, 11:45 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 2, 11:47 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Wed Sep 3, 12:14 am)
Re: xfrm_state locking regression..., Herbert Xu, (Fri Sep 5, 4:55 am)
Re: xfrm_state locking regression..., David Miller, (Mon Sep 8, 5:09 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Mon Sep 8, 5:18 pm)
Re: xfrm_state locking regression..., David Miller, (Mon Sep 8, 5:20 pm)
Re: xfrm_state locking regression..., David Miller, (Mon Sep 8, 5:25 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 5:25 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 7:33 am)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 1:20 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 8:01 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 8:04 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 8:15 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 8:22 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 8:23 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 8:38 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 9:01 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 9:06 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 9:22 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 9:24 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 9:48 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 9:52 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 9:53 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 9, 10:16 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 10:21 pm)
Re: xfrm_state locking regression..., David Miller, (Tue Sep 9, 10:23 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 9, 10:46 pm)
Re: xfrm_state locking regression..., Paul E. McKenney, (Thu Sep 11, 2:24 pm)
Re: xfrm_state locking regression..., David Miller, (Thu Sep 11, 3:00 pm)
Re: xfrm_state locking regression..., Paul E. McKenney, (Thu Sep 11, 4:22 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Fri Sep 12, 9:08 am)
Re: xfrm_state locking regression..., Paul E. McKenney, (Fri Sep 12, 10:37 am)
Re: xfrm_state locking regression..., Timo Teräs, (Sun Sep 21, 5:29 am)
Re: xfrm_state locking regression..., Timo Teräs, (Sun Sep 21, 8:21 am)
Re: xfrm_state locking regression..., Herbert Xu, (Mon Sep 22, 4:42 am)
Re: xfrm_state locking regression..., Timo Teräs, (Mon Sep 22, 6:01 am)
Re: xfrm_state locking regression..., Herbert Xu, (Mon Sep 22, 4:50 pm)
Re: xfrm_state locking regression..., David Miller, (Mon Sep 22, 7:48 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Mon Sep 22, 9:53 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Mon Sep 22, 9:59 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Mon Sep 22, 10:17 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Mon Sep 22, 10:22 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Mon Sep 22, 11:25 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Mon Sep 22, 11:47 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Mon Sep 22, 11:56 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 2:39 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 4:24 am)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 5:08 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 5:14 am)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 5:25 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 5:56 am)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 6:01 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 6:07 am)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 6:30 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 6:32 am)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 6:46 am)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 9:23 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 10:14 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 10:15 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 10:46 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 10:55 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 11:04 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 11:13 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Tue Sep 23, 11:20 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Tue Sep 23, 11:21 pm)
Re: xfrm_state locking regression..., Timo Teräs, (Wed Sep 24, 12:29 am)
Re: xfrm_state locking regression..., Herbert Xu, (Wed Sep 24, 12:54 am)
Re: xfrm_state locking regression..., Timo Teräs, (Wed Sep 24, 6:18 am)
Re: xfrm_state locking regression..., Herbert Xu, (Wed Sep 24, 7:08 am)
Re: xfrm_state locking regression..., Timo Teräs, (Wed Sep 24, 11:03 pm)
Re: xfrm_state locking regression..., Herbert Xu, (Thu Sep 25, 12:57 am)
Re: xfrm_state locking regression..., Timo Teräs, (Thu Sep 25, 1:42 am)
Re: xfrm_state locking regression..., Herbert Xu, (Thu Sep 25, 1:56 am)
Re: xfrm_state locking regression..., Timo Teräs, (Thu Sep 25, 2:01 am)
Re: xfrm_state locking regression..., Herbert Xu, (Thu Sep 25, 2:49 am)
Re: xfrm_state locking regression..., Timo Teräs, (Thu Sep 25, 5:12 am)
Re: xfrm_state locking regression..., Timo Teräs, (Thu Sep 25, 5:36 am)
Re: xfrm_state locking regression..., Herbert Xu, (Thu Sep 25, 7:08 pm)
Re: xfrm_state locking regression..., David Miller, (Wed Oct 1, 3:07 am)
Re: xfrm_state locking regression..., Herbert Xu, (Wed Oct 1, 7:05 am)