ramoops: add pdata NULL check to ramoops_probe

This adds a check for a NULL platform data, which should only be possible
if a driver incorrectly sets up a probe request without also having defined
the platform_data structure. This is based on a patch from Geliang Tang.

Signed-off-by: Kees Cook <keescook@chromium.org>
This commit is contained in:
Kees Cook 2016-11-15 16:29:40 -08:00
parent 70ad35db33
commit fc46d4e453
1 changed files with 11 additions and 2 deletions

View File

@ -734,11 +734,20 @@ static int ramoops_probe(struct platform_device *pdev)
goto fail_out;
}
/* Only a single ramoops area allowed at a time, so fail extra
/*
* Only a single ramoops area allowed at a time, so fail extra
* probes.
*/
if (cxt->max_dump_cnt)
if (cxt->max_dump_cnt) {
pr_err("already initialized\n");
goto fail_out;
}
/* Make sure we didn't get bogus platform data pointer. */
if (!pdata) {
pr_err("NULL platform data\n");
goto fail_out;
}
if (!pdata->mem_size || (!pdata->record_size && !pdata->console_size &&
!pdata->ftrace_size && !pdata->pmsg_size)) {