ramoops: use persistent_ram_free() instead of kfree() for freeing prz

persistent_ram_zone(=prz) structures are allocated by persistent_ram_new(),
which includes vmap() or ioremap(). But they are currently freed by
kfree(). This uses persistent_ram_free() for correct this asymmetry usage.

Signed-off-by: Hiraku Toyooka <hiraku.toyooka.gu@hitachi.com>
Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.kw@hitachi.com>
Cc: Mark Salyzyn <salyzyn@android.com>
Cc: Seiji Aguchi <seiji.aguchi.tr@hitachi.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
This commit is contained in:
Hiraku Toyooka 2016-07-25 12:56:55 +09:00 committed by Kees Cook
parent 529182e204
commit e976e56423

View file

@ -643,11 +643,11 @@ static int ramoops_probe(struct platform_device *pdev)
kfree(cxt->pstore.buf);
fail_clear:
cxt->pstore.bufsize = 0;
kfree(cxt->mprz);
persistent_ram_free(cxt->mprz);
fail_init_mprz:
kfree(cxt->fprz);
persistent_ram_free(cxt->fprz);
fail_init_fprz:
kfree(cxt->cprz);
persistent_ram_free(cxt->cprz);
fail_init_cprz:
ramoops_free_przs(cxt);
fail_out: