Re: [RFC][PATCH] futex: Hide false positive about uninit var usage

From: Darren Hart
Date: Tue Nov 16 2010 - 11:43:30 EST


On 11/16/2010 08:32 AM, Sergio Aguirre wrote:
In exit_robust_list, there was this warning shown:

kernel/futex.c: In function 'exit_robust_list':
kernel/futex.c:2492: warning: 'next_pi' may be used uninitialized in this function

Which is a false positive, since in the function, the only scenario
possible in which the var is read, is after a successful excecution of
fetch_robust_entry, which populates the variable.

So there's no real possibility of it being used uninitialized.

Hi Sergio,

You are correct. Thomas has recently pulled my fix for this into tip, it should be queued for mainline already.

Thanks,

Darren Hart


Signed-off-by: Sergio Aguirre<saaguirre@xxxxxx>
Cc: Thomas Gleixner<tglx@xxxxxxxxxxxxx>
Cc: Peter Zijlstra<a.p.zijlstra@xxxxxxxxx>
Cc: Darren Hart<dvhart@xxxxxxxxxxxxxxx>
Cc: Ingo Molnar<mingo@xxxxxxx>
Cc: Namhyung Kim<namhyung@xxxxxxxxx>
---
kernel/futex.c | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/kernel/futex.c b/kernel/futex.c
index 6c683b3..3646157 100644
--- a/kernel/futex.c
+++ b/kernel/futex.c
@@ -2489,7 +2489,8 @@ void exit_robust_list(struct task_struct *curr)
{
struct robust_list_head __user *head = curr->robust_list;
struct robust_list __user *entry, *next_entry, *pending;
- unsigned int limit = ROBUST_LIST_LIMIT, pi, next_pi, pip;
+ unsigned int limit = ROBUST_LIST_LIMIT, pi;
+ unsigned int uninitialized_var(next_pi), pip;
unsigned long futex_offset;
int rc;



--
Darren Hart
Yocto Linux Kernel
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/