Bugzilla – Attachment 87491 Details for
Bug 117749
IPsec crashes kernel
Home
|
New
|
Browse
|
Search
|
[?]
|
Reports
|
Requests
|
IDP Log In
|
Forgot Password
[patch]
proper patch for the 10.0 kernel
xfrm_endless_loop (text/plain), 1011 bytes, created by
Jiri Bohac
on 2006-06-06 16:01:59 UTC
(
hide
)
Description:
proper patch for the 10.0 kernel
Filename:
MIME Type:
Creator:
Jiri Bohac
Created:
2006-06-06 16:01:59 UTC
Size:
1011 bytes
patch
obsolete
>--- linux-2.6.13-SL100_BRANCH/net/xfrm/xfrm_policy.c.old 2006-06-06 18:09:27.000000000 +0200 >+++ linux-2.6.13-SL100_BRANCH/net/xfrm/xfrm_policy.c 2006-06-06 18:11:16.000000000 +0200 >@@ -742,7 +742,18 @@ > int err; > u32 genid; > u16 family = dst_orig->ops->family; >+ unsigned long timeout = jiffies + 60 * HZ; >+ int loops = 0; >+ > restart: >+ if (unlikely(time_after(jiffies, timeout))) { >+ printk(KERN_NOTICE "xfrm_lookup bailing out after 60 seconds and %d loops\n", loops); >+ dump_stack(); >+ err = -EHOSTUNREACH; >+ goto error_nopol; >+ } >+ ++loops; >+ > genid = atomic_read(&flow_cache_genid); > policy = NULL; > if (sk && sk->sk_policy[1]) >@@ -847,7 +858,9 @@ > xfrm_pol_put(policy); > if (dst) > dst_free(dst); >- goto restart; >+ >+ err = -EHOSTUNREACH; >+ goto error; > } > dst->next = policy->bundles; > policy->bundles = dst; >@@ -860,8 +873,9 @@ > return 0; > > error: >- dst_release(dst_orig); > xfrm_pol_put(policy); >+error_nopol: >+ dst_release(dst_orig); > *dst_p = NULL; > return err; > }
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
Actions:
View
|
Diff
Attachments on
bug 117749
:
54633
|
54650
|
54652
|
59102
|
59285
|
65244
|
65245
|
65248
|
65282
|
65369
|
65417
|
65615
|
66176
|
70394
|
70395
|
86502
| 87491