dlm: fix uninitialized variable for search_rsb_list callers
authorBenny Halevy <bhalevy@panasas.com>
Mon, 30 Jun 2008 16:59:14 +0000 (19:59 +0300)
committerDavid Teigland <teigland@redhat.com>
Mon, 14 Jul 2008 18:56:59 +0000 (13:56 -0500)
gcc 4.3.0 correctly emits the following warning.
search_rsb_list does not *r_ret if no dlm_rsb is found
and _search_rsb may pass the uninitialized value upstream
on the error path when both calls to search_rsb_list
return non-zero error.

The fix sets *r_ret to NULL on search_rsb_list's not-found path.

Signed-off-by: Benny Halevy <bhalevy@panasas.com>
Signed-off-by: David Teigland <teigland@redhat.com>
fs/dlm/lock.c

index 7ba9586a094377c037000a085af1489b94dead03..724ddac91538040d058abfc9888f4188143f83a7 100644 (file)
@@ -363,6 +363,7 @@ static int search_rsb_list(struct list_head *head, char *name, int len,
                if (len == r->res_length && !memcmp(name, r->res_name, len))
                        goto found;
        }
+       *r_ret = NULL;
        return -EBADR;
 
  found: