Thread (3 messages) 3 messages, 2 authors, 2012-02-20

Re: [PATCH] Fix potentially derefencing uninitialized 'r'.

From: Geunsik Lim <hidden>
Date: 2012-02-20 07:57:38
Also in: lkml

On Sat, Feb 18, 2012 at 7:28 AM, Andrew Morton
[off-list ref] wrote:
On Fri,  3 Feb 2012 17:20:56 +0900
Geunsik Lim [off-list ref] wrote:
quoted
struct memblock_region 'r' will not be initialized potentially
because of while statement's condition in __next_mem_pfn_range()function.
Initialize struct memblock_region data structure by default.

Signed-off-by: Geunsik Lim <redacted>
---
 mm/memblock.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)
diff --git a/mm/memblock.c b/mm/memblock.c
index 77b5f22..867f5a2 100644
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@ -671,7 +671,7 @@ void __init_memblock __next_mem_pfn_range(int *idx, int nid,
                              unsigned long *out_end_pfn, int *out_nid)
 {
      struct memblock_type *type = &memblock.memory;
-     struct memblock_region *r;
+     struct memblock_region *r = &type->regions[*idx];

      while (++*idx < type->cnt) {
              r = &type->regions[*idx];
The following `if' test prevents any such dereference.

Maybe you saw a compilation warning (I didn't).  If so,
unintialized_var() is one way of suppressing it.
Yepp. This patch is  for solving compilation warning as you commented.
A better way is to reorganise the code (nicely).  Often that option
isn't available.
I will post patch again after reorganizing the code with better way.
Thanks.


-- 
----
Best regards,
Geunsik Lim, Samsung Electronics
http://leemgs.fedorapeople.org
----
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org.  For more info on Linux MM,
see: http://www.linux-mm.org/ .
Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help