diff options
Diffstat (limited to 'fs/ecryptfs/keystore.c')
-rw-r--r-- | fs/ecryptfs/keystore.c | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/fs/ecryptfs/keystore.c b/fs/ecryptfs/keystore.c index 259525c9abb8..f9965139c430 100644 --- a/fs/ecryptfs/keystore.c +++ b/fs/ecryptfs/keystore.c | |||
@@ -2366,21 +2366,18 @@ struct kmem_cache *ecryptfs_key_sig_cache; | |||
2366 | int ecryptfs_add_keysig(struct ecryptfs_crypt_stat *crypt_stat, char *sig) | 2366 | int ecryptfs_add_keysig(struct ecryptfs_crypt_stat *crypt_stat, char *sig) |
2367 | { | 2367 | { |
2368 | struct ecryptfs_key_sig *new_key_sig; | 2368 | struct ecryptfs_key_sig *new_key_sig; |
2369 | int rc = 0; | ||
2370 | 2369 | ||
2371 | new_key_sig = kmem_cache_alloc(ecryptfs_key_sig_cache, GFP_KERNEL); | 2370 | new_key_sig = kmem_cache_alloc(ecryptfs_key_sig_cache, GFP_KERNEL); |
2372 | if (!new_key_sig) { | 2371 | if (!new_key_sig) { |
2373 | rc = -ENOMEM; | ||
2374 | printk(KERN_ERR | 2372 | printk(KERN_ERR |
2375 | "Error allocating from ecryptfs_key_sig_cache\n"); | 2373 | "Error allocating from ecryptfs_key_sig_cache\n"); |
2376 | goto out; | 2374 | return -ENOMEM; |
2377 | } | 2375 | } |
2378 | memcpy(new_key_sig->keysig, sig, ECRYPTFS_SIG_SIZE_HEX); | 2376 | memcpy(new_key_sig->keysig, sig, ECRYPTFS_SIG_SIZE_HEX); |
2379 | mutex_lock(&crypt_stat->keysig_list_mutex); | 2377 | /* Caller must hold keysig_list_mutex */ |
2380 | list_add(&new_key_sig->crypt_stat_list, &crypt_stat->keysig_list); | 2378 | list_add(&new_key_sig->crypt_stat_list, &crypt_stat->keysig_list); |
2381 | mutex_unlock(&crypt_stat->keysig_list_mutex); | 2379 | |
2382 | out: | 2380 | return 0; |
2383 | return rc; | ||
2384 | } | 2381 | } |
2385 | 2382 | ||
2386 | struct kmem_cache *ecryptfs_global_auth_tok_cache; | 2383 | struct kmem_cache *ecryptfs_global_auth_tok_cache; |