| To: | Mika Penttil? <mika.penttila@xxxxxxxxxxx> |
|---|---|
| Subject: | Re: [3/4] [IPSEC] Add route element to xfrm_dst |
| From: | Herbert Xu <herbert@xxxxxxxxxxxxxxxxxxx> |
| Date: | Tue, 15 Feb 2005 20:53:46 +1100 |
| Cc: | netdev@xxxxxxxxxxx |
| In-reply-to: | <4211AE5E.2010506@kolumbus.fi> |
| References: | <20050214221006.GA18415@gondor.apana.org.au> <20050214221200.GA18465@gondor.apana.org.au> <20050214221433.GB18465@gondor.apana.org.au> <4211AE5E.2010506@kolumbus.fi> |
| Sender: | netdev-bounce@xxxxxxxxxxx |
| User-agent: | Mutt/1.5.6+20040722i |
On Tue, Feb 15, 2005 at 10:10:06AM +0200, Mika Penttil? wrote:
>
> Shouldn't this pinning happen inside the loop for eaxh xdst, to be
> balanced with the dst_release(xdst->route) in xfrm_dst_destroy ?
>
> >+ dst_hold(&rt->u.dst);
> >
> > for (i = 0; i < nx; i++) {
> > struct dst_entry *dst1 = dst_alloc(&xfrm4_dst_ops);
> >+ struct xfrm_dst *xdst;
> >
> > if (unlikely(dst1 == NULL)) {
> > err = -ENOBUFS;
There is a dst_release here.
The reference is either released here if the allocation fails, or it
is held by dst1 which is either returned or freed as part of the bundle.
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@xxxxxxxxxxxxxxxxxxx>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
|
| <Prev in Thread] | Current Thread | [Next in Thread> |
|---|---|---|
| ||
| Previous by Date: | Re: [3/4] [IPSEC] Add route element to xfrm_dst, Mika Penttilä |
|---|---|
| Next by Date: | Re: [3/4] [IPSEC] Add route element to xfrm_dst, Mika Penttilà |
| Previous by Thread: | Re: [3/4] [IPSEC] Add route element to xfrm_dst, Mika Penttilä |
| Next by Thread: | Re: [3/4] [IPSEC] Add route element to xfrm_dst, Mika Penttilà |
| Indexes: | [Date] [Thread] [Top] [All Lists] |