From cf06dd8459db5331f744141e644ad756007f56e2 Mon Sep 17 00:00:00 2001 From: Miloslav Trmač Date: Tue, 13 Jul 2010 20:11:13 +0200 Subject: Don't access key_item_st after freeing it Signed-off-by: Nikos Mavrogiannopoulos --- ncr-key.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ncr-key.c b/ncr-key.c index 5b81276..134831e 100644 --- a/ncr-key.c +++ b/ncr-key.c @@ -145,13 +145,13 @@ exit: void _ncr_key_item_put( struct key_item_st* item) { + if (atomic_read(&item->writer) > 0) + atomic_dec(&item->writer); if (atomic_dec_and_test(&item->refcnt)) { ncr_limits_remove(item->uid, item->pid, LIMIT_TYPE_KEY); ncr_key_clear(item); kfree(item); } - if (atomic_read(&item->writer) > 0) - atomic_dec(&item->writer); } int ncr_key_init(struct list_sem_st* lst, void __user* arg) -- cgit