From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S933433AbcJRHOf (ORCPT ); Tue, 18 Oct 2016 03:14:35 -0400 Received: from mail4.hitachi.co.jp ([133.145.228.5]:49021 "EHLO mail4.hitachi.co.jp" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S933159AbcJRHOX (ORCPT ); Tue, 18 Oct 2016 03:14:23 -0400 From: Nobuhiro Iwamatsu To: Anton Vorontsov , Colin Cross , Kees Cook , Tony Luck Cc: linux-kernel@vger.kernel.org, cti.systems-productivity-manager.ts@hitachi.com, Nobuhiro Iwamatsu , Hiraku Toyooka , Mark Salyzyn , Seiji Aguchi , Shuah Khan Subject: [PATCH v3 2/8] pstore: Change parameter of ramoops_free_przs() Date: Tue, 18 Oct 2016 16:13:28 +0900 Message-Id: <1476774814-6840-3-git-send-email-nobuhiro.iwamatsu.kw@hitachi.com> X-Mailer: git-send-email 2.8.1.windows.1 In-Reply-To: <1476774814-6840-1-git-send-email-nobuhiro.iwamatsu.kw@hitachi.com> References: <1476774814-6840-1-git-send-email-nobuhiro.iwamatsu.kw@hitachi.com> X-TM-AS-GCONF: 00 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This commit changes parameter of ramoops_free_przs() from struct ramoops_context * into struct persistent_ram_zone * in order to make it available for all prz array. Signed-off-by: Nobuhiro Iwamatsu Signed-off-by: Hiraku Toyooka Cc: Anton Vorontsov Cc: Colin Cross Cc: Kees Cook Cc: Mark Salyzyn Cc: Seiji Aguchi Cc: Shuah Khan Cc: Tony Luck V3: - Split patch. - Rebase. --- fs/pstore/ram.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/fs/pstore/ram.c b/fs/pstore/ram.c index 0bef455..691680f 100644 --- a/fs/pstore/ram.c +++ b/fs/pstore/ram.c @@ -392,18 +392,16 @@ static struct ramoops_context oops_cxt = { }, }; -static void ramoops_free_przs(struct ramoops_context *cxt) +static void ramoops_free_przs(struct persistent_ram_zone **przs, int cnt) { int i; - if (!cxt->przs) + if (!przs) return; - for (i = 0; i < cxt->max_dump_cnt; i++) - persistent_ram_free(cxt->przs[i]); - - kfree(cxt->przs); - cxt->max_dump_cnt = 0; + for (i = 0; i < cnt; i++) + persistent_ram_free(przs[i]); + kfree(przs); } static int ramoops_init_przs(struct device *dev, struct ramoops_context *cxt, @@ -684,7 +682,8 @@ static int ramoops_probe(struct platform_device *pdev) fail_init_fprz: persistent_ram_free(cxt->cprz); fail_init_cprz: - ramoops_free_przs(cxt); + ramoops_free_przs(cxt->przs, cxt->max_dump_cnt); + cxt->max_dump_cnt = 0; fail_out: return err; } @@ -701,7 +700,8 @@ static int ramoops_remove(struct platform_device *pdev) persistent_ram_free(cxt->mprz); persistent_ram_free(cxt->fprz); persistent_ram_free(cxt->cprz); - ramoops_free_przs(cxt); + ramoops_free_przs(cxt->przs, cxt->max_dump_cnt); + cxt->max_dump_cnt = 0; return 0; } -- 2.9.3