Home Home > GIT Browse
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorThomas Bogendoerfer <tbogendoerfer@suse.de>2018-11-09 13:07:12 +0100
committerThomas Bogendoerfer <tbogendoerfer@suse.de>2018-11-09 13:07:25 +0100
commitc9c8f17518452b0157b6ae2e8fd0dd4320638f0d (patch)
tree780086f2f65baed637fbb2fd7f7747664cdd2def
parent3db7fb94e83309634644fb5ee81a8e6bbf77904b (diff)
xfrm: fix rcu usage in xfrm_get_type_offload (bsc#1103990
-rw-r--r--net/xfrm/xfrm_state.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/xfrm/xfrm_state.c b/net/xfrm/xfrm_state.c
index 6bb2fd1b0156..e541a8b01d0b 100644
--- a/net/xfrm/xfrm_state.c
+++ b/net/xfrm/xfrm_state.c
@@ -313,13 +313,14 @@ retry:
if ((type && !try_module_get(type->owner)))
type = NULL;
+ rcu_read_unlock();
+
if (!type && try_load) {
request_module("xfrm-offload-%d-%d", family, proto);
try_load = 0;
goto retry;
}
- rcu_read_unlock();
return type;
}