From 46b05c7bd51edafb8c8da088b49bddf7f78d48f9 Mon Sep 17 00:00:00 2001 From: Ingo Tuchscherer Date: Tue, 16 Sep 2014 14:37:25 +0200 Subject: s390/zcrypt: Fixed possible race condition in zcrypt module handling Signed-off-by: Ingo Tuchscherer Signed-off-by: Martin Schwidefsky --- drivers/s390/crypto/zcrypt_api.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) (limited to 'drivers/s390/crypto') diff --git a/drivers/s390/crypto/zcrypt_api.c b/drivers/s390/crypto/zcrypt_api.c index 0e18c5dcd91f..08f1830cbfc4 100644 --- a/drivers/s390/crypto/zcrypt_api.c +++ b/drivers/s390/crypto/zcrypt_api.c @@ -343,10 +343,11 @@ struct zcrypt_ops *__ops_lookup(unsigned char *name, int variant) break; } } + if (!found || !try_module_get(zops->owner)) + zops = NULL; + spin_unlock_bh(&zcrypt_ops_list_lock); - if (!found) - return NULL; return zops; } @@ -359,8 +360,6 @@ struct zcrypt_ops *zcrypt_msgtype_request(unsigned char *name, int variant) request_module("%s", name); zops = __ops_lookup(name, variant); } - if ((!zops) || (!try_module_get(zops->owner))) - return NULL; return zops; } EXPORT_SYMBOL(zcrypt_msgtype_request); -- cgit v1.2.3