[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <dfd3348b7971bee89360efb85f8d622e6574b003.1286193121.git.EXT-Eugeny.Kuznetsov@nokia.com>
Date: Tue, 5 Oct 2010 12:47:57 +0400
From: Evgeny Kuznetsov <EXT-Eugeny.Kuznetsov@...ia.com>
To: akpm@...ux-foundation.org, torvalds@...ux-foundation.org
Cc: m.nazarewicz@...sung.com, mingo@...e.hu, gregkh@...e.de,
a.p.zijlstra@...llo.nl, xiaosuo@...il.com,
linux-kernel@...r.kernel.org, ext-eugeny.kuznetsov@...ia.com
Subject: [PATCH 1/1] wait: using uninitialized member of wait queue
From: Evgeny Kuznetsov <ext-eugeny.kuznetsov@...ia.com>
Member "flags" of "wait_queue_t" struct is used in several places in
kernel code without beeing initialized. "flags" is used in bitwise operations.
If "flags" not initialized then unexpected behaviour may have place.
Incorrect flags maybe used later in code.
Struct "wait_queue_t" is initialized in function "init_wait()". But
"init_wait()" do not initialize "flag" member.
Added initialization of "wait_queue_t.flags" with zero value into "init_wait".
Signed-off-by: Evgeny Kuznetsov <EXT-Eugeny.Kuznetsov@...ia.com>
---
include/linux/wait.h | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/include/linux/wait.h b/include/linux/wait.h
index 0836ccc..3efc9f3 100644
--- a/include/linux/wait.h
+++ b/include/linux/wait.h
@@ -614,6 +614,7 @@ int wake_bit_function(wait_queue_t *wait, unsigned mode, int sync, void *key);
(wait)->private = current; \
(wait)->func = autoremove_wake_function; \
INIT_LIST_HEAD(&(wait)->task_list); \
+ (wait)->flags = 0; \
} while (0)
/**
--
1.6.3.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists