diff options
Diffstat (limited to 'security/keys/keyring.c')
| -rw-r--r-- | security/keys/keyring.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/security/keys/keyring.c b/security/keys/keyring.c index a1f6bac647a1..9c208c756df8 100644 --- a/security/keys/keyring.c +++ b/security/keys/keyring.c | |||
| @@ -201,7 +201,11 @@ static void keyring_destroy(struct key *keyring) | |||
| 201 | 201 | ||
| 202 | if (keyring->description) { | 202 | if (keyring->description) { |
| 203 | write_lock(&keyring_name_lock); | 203 | write_lock(&keyring_name_lock); |
| 204 | list_del(&keyring->type_data.link); | 204 | |
| 205 | if (keyring->type_data.link.next != NULL && | ||
| 206 | !list_empty(&keyring->type_data.link)) | ||
| 207 | list_del(&keyring->type_data.link); | ||
| 208 | |||
| 205 | write_unlock(&keyring_name_lock); | 209 | write_unlock(&keyring_name_lock); |
| 206 | } | 210 | } |
| 207 | 211 | ||
