aboutsummaryrefslogtreecommitdiffstats
path: root/security/keys/key.c
diff options
context:
space:
mode:
Diffstat (limited to 'security/keys/key.c')
-rw-r--r--security/keys/key.c10
1 files changed, 4 insertions, 6 deletions
diff --git a/security/keys/key.c b/security/keys/key.c
index e17ba6aefdc0..aee2ec5a18fc 100644
--- a/security/keys/key.c
+++ b/security/keys/key.c
@@ -276,12 +276,10 @@ struct key *key_alloc(struct key_type *type, const char *desc,
276 if (!key) 276 if (!key)
277 goto no_memory_2; 277 goto no_memory_2;
278 278
279 if (desc) { 279 key->index_key.desc_len = desclen;
280 key->index_key.desc_len = desclen; 280 key->index_key.description = kmemdup(desc, desclen + 1, GFP_KERNEL);
281 key->index_key.description = kmemdup(desc, desclen + 1, GFP_KERNEL); 281 if (!key->description)
282 if (!key->description) 282 goto no_memory_3;
283 goto no_memory_3;
284 }
285 283
286 atomic_set(&key->usage, 1); 284 atomic_set(&key->usage, 1);
287 init_rwsem(&key->sem); 285 init_rwsem(&key->sem);