Browse Source

pstore: Fix NULL pointer fault if get NULL prz in ramoops_get_next_prz

ramoops_get_next_prz get the prz according the paramters. If it get a
uninitialized prz, access its members by following persistent_ram_old_size(prz)
will cause a NULL pointer crash.
Ex: if ftrace_size is 0, fprz will be NULL.

Fix it by return NULL in advance.

Signed-off-by: Liu ShuoX <shuox.liu@intel.com>
Acked-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Tony Luck <tony.luck@intel.com>
Liu ShuoX 11 years ago
parent
commit
b0aa931fb8
1 changed files with 2 additions and 0 deletions
  1. 2 0
      fs/pstore/ram.c

+ 2 - 0
fs/pstore/ram.c

@@ -119,6 +119,8 @@ ramoops_get_next_prz(struct persistent_ram_zone *przs[], uint *c, uint max,
 		return NULL;
 		return NULL;
 
 
 	prz = przs[i];
 	prz = przs[i];
+	if (!prz)
+		return NULL;
 
 
 	/* Update old/shadowed buffer. */
 	/* Update old/shadowed buffer. */
 	if (update)
 	if (update)