diff options
Diffstat (limited to 'kernel/cred.c')
| -rw-r--r-- | kernel/cred.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/cred.c b/kernel/cred.c index e1dbe9eef800..62af1816c235 100644 --- a/kernel/cred.c +++ b/kernel/cred.c | |||
| @@ -398,6 +398,8 @@ struct cred *prepare_usermodehelper_creds(void) | |||
| 398 | 398 | ||
| 399 | error: | 399 | error: |
| 400 | put_cred(new); | 400 | put_cred(new); |
| 401 | return NULL; | ||
| 402 | |||
| 401 | free_tgcred: | 403 | free_tgcred: |
| 402 | #ifdef CONFIG_KEYS | 404 | #ifdef CONFIG_KEYS |
| 403 | kfree(tgcred); | 405 | kfree(tgcred); |
| @@ -791,8 +793,6 @@ bool creds_are_invalid(const struct cred *cred) | |||
| 791 | { | 793 | { |
| 792 | if (cred->magic != CRED_MAGIC) | 794 | if (cred->magic != CRED_MAGIC) |
| 793 | return true; | 795 | return true; |
| 794 | if (atomic_read(&cred->usage) < atomic_read(&cred->subscribers)) | ||
| 795 | return true; | ||
| 796 | #ifdef CONFIG_SECURITY_SELINUX | 796 | #ifdef CONFIG_SECURITY_SELINUX |
| 797 | if (selinux_is_enabled()) { | 797 | if (selinux_is_enabled()) { |
| 798 | if ((unsigned long) cred->security < PAGE_SIZE) | 798 | if ((unsigned long) cred->security < PAGE_SIZE) |
