summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--security/keys/key.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/security/keys/key.c b/security/keys/key.c
index 3762d5b1ce6..bd9d2670e9c 100644
--- a/security/keys/key.c
+++ b/security/keys/key.c
@@ -956,8 +956,10 @@ void unregister_key_type(struct key_type *ktype)
for (_n = rb_first(&key_serial_tree); _n; _n = rb_next(_n)) {
key = rb_entry(_n, struct key, serial_node);
- if (key->type == ktype)
+ if (key->type == ktype) {
key->type = &key_type_dead;
+ set_bit(KEY_FLAG_DEAD, &key->flags);
+ }
}
spin_unlock(&key_serial_lock);