fix error-path NULL deref in alloc_posix_timer()
authorDan Carpenter <[email protected]>
Thu, 2 Oct 2008 21:50:14 +0000 (14:50 -0700)
committerLinus Torvalds <[email protected]>
Thu, 2 Oct 2008 22:53:13 +0000 (15:53 -0700)
Found by static checker (http://repo.or.cz/w/smatch.git).

Signed-off-by: Dan Carpenter <[email protected]>
Acked-by: Thomas Gleixner <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
kernel/posix-timers.c

index e36d5798cbff427fca02fd8c9a8fb6f615dbd3fe..5131e5471169226ef8db42f20792c8ffdac6d12b 100644 (file)
@@ -441,7 +441,7 @@ static struct k_itimer * alloc_posix_timer(void)
                return tmr;
        if (unlikely(!(tmr->sigq = sigqueue_alloc()))) {
                kmem_cache_free(posix_timers_cache, tmr);
-               tmr = NULL;
+               return NULL;
        }
        memset(&tmr->sigq->info, 0, sizeof(siginfo_t));
        return tmr;