ieee1394/csr1212: fix false positive kmemcheck report

kmemcheck reports a use of uninitialized memory here, but it's not
a real error. The structure in question has just been allocated, and
the whole field is initialized, but it happens in two steps.

We fix the false positive by inserting a kmemcheck annotation.

Signed-off-by: Vegard Nossum <vegard.nossum@gmail.com>
This commit is contained in:
Vegard Nossum 2008-09-11 20:59:03 +02:00
parent 004cdb5a71
commit 96c25c81ec

View file

@ -35,6 +35,7 @@
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/kmemcheck.h>
#include <linux/string.h> #include <linux/string.h>
#include <asm/bug.h> #include <asm/bug.h>
#include <asm/byteorder.h> #include <asm/byteorder.h>
@ -387,6 +388,7 @@ csr1212_new_descriptor_leaf(u8 dtype, u32 specifier_id,
if (!kv) if (!kv)
return NULL; return NULL;
kmemcheck_annotate_variable(kv->value.leaf.data[0]);
CSR1212_DESCRIPTOR_LEAF_SET_TYPE(kv, dtype); CSR1212_DESCRIPTOR_LEAF_SET_TYPE(kv, dtype);
CSR1212_DESCRIPTOR_LEAF_SET_SPECIFIER_ID(kv, specifier_id); CSR1212_DESCRIPTOR_LEAF_SET_SPECIFIER_ID(kv, specifier_id);