if (key->type != ktype) continue; 
if (key->type == ktype) key->type = &key_type_dead; } 
void unregister_key_type(struct key_type *ktype){	struct rb_node *_n;	struct key *key;	down_write(&key_types_sem);	/* withdraw the key type */	list_del_init(&ktype->link);	/* need to withdraw all keys of this type */	spin_lock(&key_serial_lock);	for (_n = rb_first(&key_serial_tree); _n; _n = rb_next(_n)) {		key = rb_entry(_n, struct key, serial_node);		if (key->type != ktype)			continue;		write_lock(&key->lock);		key->type = &key_type_dead;		write_unlock(&key->lock);		/* there shouldn't be anyone looking at the description or		 * payload now */		if (ktype->destroy)			ktype->destroy(key);		memset(&key->payload, 0xbd, sizeof(key->payload));	}	spin_unlock(&key_serial_lock);	up_write(&key_types_sem);} /* end unregister_key_type() */
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/76d8aeabfeb1c42641a81c44280177b9a08670d8/key.c/clean/security/keys/key.c