diff options
Diffstat (limited to 'net/xfrm/xfrm_ipcomp.c')
-rw-r--r-- | net/xfrm/xfrm_ipcomp.c | 18 |
1 files changed, 9 insertions, 9 deletions
diff --git a/net/xfrm/xfrm_ipcomp.c b/net/xfrm/xfrm_ipcomp.c index 42cd18391f46..fc91ad7ee26e 100644 --- a/net/xfrm/xfrm_ipcomp.c +++ b/net/xfrm/xfrm_ipcomp.c | |||
@@ -17,11 +17,11 @@ | |||
17 | 17 | ||
18 | #include <linux/crypto.h> | 18 | #include <linux/crypto.h> |
19 | #include <linux/err.h> | 19 | #include <linux/err.h> |
20 | #include <linux/gfp.h> | ||
21 | #include <linux/list.h> | 20 | #include <linux/list.h> |
22 | #include <linux/module.h> | 21 | #include <linux/module.h> |
23 | #include <linux/mutex.h> | 22 | #include <linux/mutex.h> |
24 | #include <linux/percpu.h> | 23 | #include <linux/percpu.h> |
24 | #include <linux/slab.h> | ||
25 | #include <linux/smp.h> | 25 | #include <linux/smp.h> |
26 | #include <linux/vmalloc.h> | 26 | #include <linux/vmalloc.h> |
27 | #include <net/ip.h> | 27 | #include <net/ip.h> |
@@ -30,12 +30,12 @@ | |||
30 | 30 | ||
31 | struct ipcomp_tfms { | 31 | struct ipcomp_tfms { |
32 | struct list_head list; | 32 | struct list_head list; |
33 | struct crypto_comp **tfms; | 33 | struct crypto_comp * __percpu *tfms; |
34 | int users; | 34 | int users; |
35 | }; | 35 | }; |
36 | 36 | ||
37 | static DEFINE_MUTEX(ipcomp_resource_mutex); | 37 | static DEFINE_MUTEX(ipcomp_resource_mutex); |
38 | static void **ipcomp_scratches; | 38 | static void * __percpu *ipcomp_scratches; |
39 | static int ipcomp_scratch_users; | 39 | static int ipcomp_scratch_users; |
40 | static LIST_HEAD(ipcomp_tfms_list); | 40 | static LIST_HEAD(ipcomp_tfms_list); |
41 | 41 | ||
@@ -200,7 +200,7 @@ EXPORT_SYMBOL_GPL(ipcomp_output); | |||
200 | static void ipcomp_free_scratches(void) | 200 | static void ipcomp_free_scratches(void) |
201 | { | 201 | { |
202 | int i; | 202 | int i; |
203 | void **scratches; | 203 | void * __percpu *scratches; |
204 | 204 | ||
205 | if (--ipcomp_scratch_users) | 205 | if (--ipcomp_scratch_users) |
206 | return; | 206 | return; |
@@ -215,10 +215,10 @@ static void ipcomp_free_scratches(void) | |||
215 | free_percpu(scratches); | 215 | free_percpu(scratches); |
216 | } | 216 | } |
217 | 217 | ||
218 | static void **ipcomp_alloc_scratches(void) | 218 | static void * __percpu *ipcomp_alloc_scratches(void) |
219 | { | 219 | { |
220 | int i; | 220 | int i; |
221 | void **scratches; | 221 | void * __percpu *scratches; |
222 | 222 | ||
223 | if (ipcomp_scratch_users++) | 223 | if (ipcomp_scratch_users++) |
224 | return ipcomp_scratches; | 224 | return ipcomp_scratches; |
@@ -239,7 +239,7 @@ static void **ipcomp_alloc_scratches(void) | |||
239 | return scratches; | 239 | return scratches; |
240 | } | 240 | } |
241 | 241 | ||
242 | static void ipcomp_free_tfms(struct crypto_comp **tfms) | 242 | static void ipcomp_free_tfms(struct crypto_comp * __percpu *tfms) |
243 | { | 243 | { |
244 | struct ipcomp_tfms *pos; | 244 | struct ipcomp_tfms *pos; |
245 | int cpu; | 245 | int cpu; |
@@ -267,10 +267,10 @@ static void ipcomp_free_tfms(struct crypto_comp **tfms) | |||
267 | free_percpu(tfms); | 267 | free_percpu(tfms); |
268 | } | 268 | } |
269 | 269 | ||
270 | static struct crypto_comp **ipcomp_alloc_tfms(const char *alg_name) | 270 | static struct crypto_comp * __percpu *ipcomp_alloc_tfms(const char *alg_name) |
271 | { | 271 | { |
272 | struct ipcomp_tfms *pos; | 272 | struct ipcomp_tfms *pos; |
273 | struct crypto_comp **tfms; | 273 | struct crypto_comp * __percpu *tfms; |
274 | int cpu; | 274 | int cpu; |
275 | 275 | ||
276 | /* This can be any valid CPU ID so we don't need locking. */ | 276 | /* This can be any valid CPU ID so we don't need locking. */ |