summaryrefslogtreecommitdiff
path: root/crypto/crypto_user.c
diff options
context:
space:
mode:
authorDmitry Torokhov <dmitry.torokhov@gmail.com>2016-03-15 16:54:45 -0700
committerDmitry Torokhov <dmitry.torokhov@gmail.com>2016-03-15 16:54:45 -0700
commit0d6e29d8da85e74c1b37801469be3974fd706ba7 (patch)
tree0a5824f6fef63ea2be36406768e8cfe3e6c2457e /crypto/crypto_user.c
parent2db18d12ffa4131d398564bfc0fb15f26cdf52e5 (diff)
parent5da64d0814134dc3542fb314a66dcdf74e8553bd (diff)
downloadlinux-crypto-0d6e29d8da85e74c1b37801469be3974fd706ba7.tar.gz
linux-crypto-0d6e29d8da85e74c1b37801469be3974fd706ba7.zip
Merge tag 'v4.5' into next
Merge with Linux 4.5 to get PROPERTY_ENTRY_INTEGER() that is needed to fix pxa/raumfeld rotary encoder properties.
Diffstat (limited to '')
-rw-r--r--crypto/crypto_user.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/crypto/crypto_user.c b/crypto/crypto_user.c
index 237f3795..43fe85f2 100644
--- a/crypto/crypto_user.c
+++ b/crypto/crypto_user.c
@@ -499,6 +499,7 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
if (link->dump == NULL)
return -EINVAL;
+ down_read(&crypto_alg_sem);
list_for_each_entry(alg, &crypto_alg_list, cra_list)
dump_alloc += CRYPTO_REPORT_MAXSIZE;
@@ -508,8 +509,11 @@ static int crypto_user_rcv_msg(struct sk_buff *skb, struct nlmsghdr *nlh)
.done = link->done,
.min_dump_alloc = dump_alloc,
};
- return netlink_dump_start(crypto_nlsk, skb, nlh, &c);
+ err = netlink_dump_start(crypto_nlsk, skb, nlh, &c);
}
+ up_read(&crypto_alg_sem);
+
+ return err;
}
err = nlmsg_parse(nlh, crypto_msg_min[type], attrs, CRYPTOCFGA_MAX,