Re: [PATCH 1/6] f2fs: fix the compiler warning for uninitialized useof variable

From: Jaegeuk Kim
Date: Sun Dec 02 2012 - 17:56:36 EST


Please, add CC: linux-f2fs-devel@xxxxxxxxxxxxxxxxxxxxx

Thank you for contribution to f2fs.
Looks good, and I'll merge them.
Thanks,

2012-12-01 (í), 10:55 +0900, Namjae Jeon:
> From: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
>
> When CONFIG_CC_OPTIMIZE_FOR_SIZE is enabled in the kernel, -Os optimisation
> flag is passed to gcc for compilation, and somehow while trying to optimize
> the code, compiler is might not able to see the initialisation of variable
> ne struct variable inside the get_node_info() function and results into
> following warning:
>
> fs/f2fs/node.c: In function 'get_node_info':
> fs/f2fs/node.c:175:3: warning: 'ne.block_addr' may be used uninitialized in
> this function [-Wuninitialized]
> fs/f2fs/node.c:265:24: note: 'ne.block_addr' was declared here
> fs/f2fs/node.c:176:3: warning: 'ne.ino' may be used uninitialized in this
> function [-Wuninitialized]
> fs/f2fs/node.c:265:24: note: 'ne.ino' was declared here
> fs/f2fs/node.c:177:3: warning: 'ne.version' may be used uninitialized in
> this function [-Wuninitialized]
> fs/f2fs/node.c:265:24: note: 'ne.version' was declared here
>
> Hence, lets initialise the ne struct variable to zero, which will remove
> this warning and also doing this does not seems to making any impact on the
> code behavior.
>
> Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
> Signed-off-by: Pankaj Kumar <pankaj.km@xxxxxxxxxxx>
> ---
> fs/f2fs/node.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/fs/f2fs/node.c b/fs/f2fs/node.c
> index 25d3036..1987036 100644
> --- a/fs/f2fs/node.c
> +++ b/fs/f2fs/node.c
> @@ -266,6 +266,7 @@ void get_node_info(struct f2fs_sb_info *sbi, nid_t nid, struct node_info *ni)
> struct nat_entry *e;
> int i;
>
> + memset(&ne, 0, sizeof(struct f2fs_nat_entry));
> ni->nid = nid;
>
> /* Check nat cache */

--
Jaegeuk Kim
Samsung

Attachment: signature.asc
Description: This is a digitally signed message part