From: Geert Uytterhoeven <geert@linux-m68k.org> To: Dan Carpenter <dan.carpenter@oracle.com> Cc: Magnus Damm <magnus.damm@gmail.com>, Simon Horman <horms+renesas@verge.net.au>, Linux-Renesas <linux-renesas-soc@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, kernel-janitors@vger.kernel.org Subject: Re: [PATCH] soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() Date: Wed, 23 Sep 2020 11:10:17 +0200 [thread overview] Message-ID: <CAMuHMdXyM1dUPJ7ZDAk6-cEjaG_bVBfsE=bqdpf7pA0ChdRLVw@mail.gmail.com> (raw) In-Reply-To: <20200923084458.GD1454948@mwanda> Hi Dan, On Wed, Sep 23, 2020 at 10:47 AM Dan Carpenter <dan.carpenter@oracle.com> wrote: > This code needs to call iounmap() on the error paths. Thanks for your patch! > Fixes: 2ed29e15e4b2 ("ARM: shmobile: R-Mobile: Move pm-rmobile to drivers/soc/renesas/") This is not the commit that introduced the issue. Fixes: 2173fc7cb681c38b ("ARM: shmobile: R-Mobile: Add DT support for PM domains") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- a/drivers/soc/renesas/rmobile-sysc.c > +++ b/drivers/soc/renesas/rmobile-sysc.c > @@ -328,6 +328,7 @@ static int __init rmobile_init_pm_domains(void) > pmd = of_get_child_by_name(np, "pm-domains"); > if (!pmd) { > pr_warn("%pOF lacks pm-domains node\n", np); > + iounmap(base); This one I can agree with, although that case is a bug in the DTS. > continue; > } > > @@ -341,6 +342,7 @@ static int __init rmobile_init_pm_domains(void) > of_node_put(pmd); > if (ret) { > of_node_put(np); > + iounmap(base); This one I cannot: in the (unlikely, only if OOM) case rmobile_add_pm_domains() returns an error, one or more PM subdomains may have been registered already. Hence if you call iounmap() here, the code will try to access unmapped registers later, leading to a crash. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
WARNING: multiple messages have this Message-ID (diff)
From: Geert Uytterhoeven <geert@linux-m68k.org> To: Dan Carpenter <dan.carpenter@oracle.com> Cc: Magnus Damm <magnus.damm@gmail.com>, Simon Horman <horms+renesas@verge.net.au>, Linux-Renesas <linux-renesas-soc@vger.kernel.org>, Linux Kernel Mailing List <linux-kernel@vger.kernel.org>, kernel-janitors@vger.kernel.org Subject: Re: [PATCH] soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() Date: Wed, 23 Sep 2020 09:10:17 +0000 [thread overview] Message-ID: <CAMuHMdXyM1dUPJ7ZDAk6-cEjaG_bVBfsE=bqdpf7pA0ChdRLVw@mail.gmail.com> (raw) In-Reply-To: <20200923084458.GD1454948@mwanda> Hi Dan, On Wed, Sep 23, 2020 at 10:47 AM Dan Carpenter <dan.carpenter@oracle.com> wrote: > This code needs to call iounmap() on the error paths. Thanks for your patch! > Fixes: 2ed29e15e4b2 ("ARM: shmobile: R-Mobile: Move pm-rmobile to drivers/soc/renesas/") This is not the commit that introduced the issue. Fixes: 2173fc7cb681c38b ("ARM: shmobile: R-Mobile: Add DT support for PM domains") > Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com> > --- a/drivers/soc/renesas/rmobile-sysc.c > +++ b/drivers/soc/renesas/rmobile-sysc.c > @@ -328,6 +328,7 @@ static int __init rmobile_init_pm_domains(void) > pmd = of_get_child_by_name(np, "pm-domains"); > if (!pmd) { > pr_warn("%pOF lacks pm-domains node\n", np); > + iounmap(base); This one I can agree with, although that case is a bug in the DTS. > continue; > } > > @@ -341,6 +342,7 @@ static int __init rmobile_init_pm_domains(void) > of_node_put(pmd); > if (ret) { > of_node_put(np); > + iounmap(base); This one I cannot: in the (unlikely, only if OOM) case rmobile_add_pm_domains() returns an error, one or more PM subdomains may have been registered already. Hence if you call iounmap() here, the code will try to access unmapped registers later, leading to a crash. Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds
next prev parent reply other threads:[~2020-09-23 9:10 UTC|newest] Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-09-23 8:44 [PATCH] soc: renesas: rmobile-sysc: Fix some leaks in rmobile_init_pm_domains() Dan Carpenter 2020-09-23 8:44 ` Dan Carpenter 2020-09-23 9:10 ` Geert Uytterhoeven [this message] 2020-09-23 9:10 ` Geert Uytterhoeven 2020-09-23 10:28 ` Dan Carpenter 2020-09-23 10:28 ` Dan Carpenter 2020-09-23 11:31 ` [PATCH v2] " Dan Carpenter 2020-09-23 11:31 ` Dan Carpenter 2020-09-24 7:35 ` Geert Uytterhoeven 2020-09-24 7:35 ` Geert Uytterhoeven
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to='CAMuHMdXyM1dUPJ7ZDAk6-cEjaG_bVBfsE=bqdpf7pA0ChdRLVw@mail.gmail.com' \ --to=geert@linux-m68k.org \ --cc=dan.carpenter@oracle.com \ --cc=horms+renesas@verge.net.au \ --cc=kernel-janitors@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-renesas-soc@vger.kernel.org \ --cc=magnus.damm@gmail.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.