aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/ipv6/seg6_hmac.c2
-rw-r--r--net/ipv6/seg6_iptunnel.c4
2 files changed, 5 insertions, 1 deletions
diff --git a/net/ipv6/seg6_hmac.c b/net/ipv6/seg6_hmac.c
index ef1c8a46e7ac..03a064803626 100644
--- a/net/ipv6/seg6_hmac.c
+++ b/net/ipv6/seg6_hmac.c
@@ -400,7 +400,7 @@ static int seg6_hmac_init_algo(void)
400 *p_tfm = tfm; 400 *p_tfm = tfm;
401 } 401 }
402 402
403 p_tfm = this_cpu_ptr(algo->tfms); 403 p_tfm = raw_cpu_ptr(algo->tfms);
404 tfm = *p_tfm; 404 tfm = *p_tfm;
405 405
406 shsize = sizeof(*shash) + crypto_shash_descsize(tfm); 406 shsize = sizeof(*shash) + crypto_shash_descsize(tfm);
diff --git a/net/ipv6/seg6_iptunnel.c b/net/ipv6/seg6_iptunnel.c
index bbfca22c34ae..1d60cb132835 100644
--- a/net/ipv6/seg6_iptunnel.c
+++ b/net/ipv6/seg6_iptunnel.c
@@ -265,7 +265,9 @@ int seg6_output(struct net *net, struct sock *sk, struct sk_buff *skb)
265 slwt = seg6_lwt_lwtunnel(orig_dst->lwtstate); 265 slwt = seg6_lwt_lwtunnel(orig_dst->lwtstate);
266 266
267#ifdef CONFIG_DST_CACHE 267#ifdef CONFIG_DST_CACHE
268 preempt_disable();
268 dst = dst_cache_get(&slwt->cache); 269 dst = dst_cache_get(&slwt->cache);
270 preempt_enable();
269#endif 271#endif
270 272
271 if (unlikely(!dst)) { 273 if (unlikely(!dst)) {
@@ -286,7 +288,9 @@ int seg6_output(struct net *net, struct sock *sk, struct sk_buff *skb)
286 } 288 }
287 289
288#ifdef CONFIG_DST_CACHE 290#ifdef CONFIG_DST_CACHE
291 preempt_disable();
289 dst_cache_set_ip6(&slwt->cache, dst, &fl6.saddr); 292 dst_cache_set_ip6(&slwt->cache, dst, &fl6.saddr);
293 preempt_enable();
290#endif 294#endif
291 } 295 }
292 296