From: Grant Likely <grant.likely@secretlab.ca>
To: Julia Lawall <julia@diku.dk>
Cc: Arnd Bergmann <arnd@arndb.de>,
kernel-janitors@vger.kernel.org,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
linuxppc-dev@lists.ozlabs.org, cbe-oss-dev@lists.ozlabs.org,
linux-kernel@vger.kernel.org,
devicetree-discuss@lists.ozlabs.org
Subject: Re: [PATCH 7/7] arch/powerpc/platforms/cell: Add of_node_put to
Date: Wed, 08 Sep 2010 19:46:58 +0000 [thread overview]
Message-ID: <20100908194658.GA7065@angua.secretlab.ca> (raw)
In-Reply-To: <1283075566-27441-8-git-send-email-julia@diku.dk>
On Sun, Aug 29, 2010 at 11:52:46AM +0200, Julia Lawall wrote:
> Add calls to of_node_put in the error handling code following calls to
> of_find_node_by_path and of_find_node_by_phandle.
>
> The semantic match that finds this problem is as follows:
> (http://coccinelle.lip6.fr/)
>
> // <smpl>
> @r exists@
> local idexpression x;
> expression E,E1;
> statement S;
> @@
>
> *x =
> (of_find_node_by_path
> |of_find_node_by_name
> |of_find_node_by_phandle
> |of_get_parent
> |of_get_next_parent
> |of_get_next_child
> |of_find_compatible_node
> |of_match_node
> )(...);
> ...
> if (x = NULL) S
> <... when != x = E
> *if (...) {
> ... when != of_node_put(x)
> when != if (...) { ... of_node_put(x); ... }
> (
> return <+...x...+>;
> |
> * return ...;
> )
> }
> ...>
> of_node_put(x);
> // </smpl>
>
> Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
>
> ---
> arch/powerpc/platforms/cell/ras.c | 4 +++-
> arch/powerpc/platforms/cell/spider-pic.c | 4 +++-
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/platforms/cell/ras.c b/arch/powerpc/platforms/cell/ras.c
> index 1d3c4ef..5ec1e47 100644
> --- a/arch/powerpc/platforms/cell/ras.c
> +++ b/arch/powerpc/platforms/cell/ras.c
> @@ -173,8 +173,10 @@ static int __init cbe_ptcal_enable(void)
> return -ENODEV;
>
> size = of_get_property(np, "ibm,cbe-ptcal-size", NULL);
> - if (!size)
> + if (!size) {
> + of_node_put(np);
> return -ENODEV;
> + }
>
> pr_debug("%s: enabling PTCAL, size = 0x%x\n", __func__, *size);
> order = get_order(*size);
> diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c
> index 5876e88..3f2e557 100644
> --- a/arch/powerpc/platforms/cell/spider-pic.c
> +++ b/arch/powerpc/platforms/cell/spider-pic.c
> @@ -258,8 +258,10 @@ static unsigned int __init spider_find_cascade_and_node(struct spider_pic *pic)
> return NO_IRQ;
> imap += intsize + 1;
> tmp = of_get_property(iic, "#interrupt-cells", NULL);
> - if (tmp = NULL)
> + if (tmp = NULL) {
> + of_node_put(iic);
> return NO_IRQ;
> + }
> intsize = *tmp;
> /* Assume unit is last entry of interrupt specifier */
> unit = imap[intsize - 1];
>
WARNING: multiple messages have this Message-ID (diff)
From: Grant Likely <grant.likely@secretlab.ca>
To: Julia Lawall <julia@diku.dk>
Cc: cbe-oss-dev@lists.ozlabs.org, Arnd Bergmann <arnd@arndb.de>,
devicetree-discuss@lists.ozlabs.org,
kernel-janitors@vger.kernel.org, linux-kernel@vger.kernel.org,
Paul Mackerras <paulus@samba.org>,
linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH 7/7] arch/powerpc/platforms/cell: Add of_node_put to avoid memory leak
Date: Wed, 8 Sep 2010 13:46:58 -0600 [thread overview]
Message-ID: <20100908194658.GA7065@angua.secretlab.ca> (raw)
In-Reply-To: <1283075566-27441-8-git-send-email-julia@diku.dk>
On Sun, Aug 29, 2010 at 11:52:46AM +0200, Julia Lawall wrote:
> Add calls to of_node_put in the error handling code following calls to
> of_find_node_by_path and of_find_node_by_phandle.
>
> The semantic match that finds this problem is as follows:
> (http://coccinelle.lip6.fr/)
>
> // <smpl>
> @r exists@
> local idexpression x;
> expression E,E1;
> statement S;
> @@
>
> *x =
> (of_find_node_by_path
> |of_find_node_by_name
> |of_find_node_by_phandle
> |of_get_parent
> |of_get_next_parent
> |of_get_next_child
> |of_find_compatible_node
> |of_match_node
> )(...);
> ...
> if (x == NULL) S
> <... when != x = E
> *if (...) {
> ... when != of_node_put(x)
> when != if (...) { ... of_node_put(x); ... }
> (
> return <+...x...+>;
> |
> * return ...;
> )
> }
> ...>
> of_node_put(x);
> // </smpl>
>
> Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
>
> ---
> arch/powerpc/platforms/cell/ras.c | 4 +++-
> arch/powerpc/platforms/cell/spider-pic.c | 4 +++-
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/platforms/cell/ras.c b/arch/powerpc/platforms/cell/ras.c
> index 1d3c4ef..5ec1e47 100644
> --- a/arch/powerpc/platforms/cell/ras.c
> +++ b/arch/powerpc/platforms/cell/ras.c
> @@ -173,8 +173,10 @@ static int __init cbe_ptcal_enable(void)
> return -ENODEV;
>
> size = of_get_property(np, "ibm,cbe-ptcal-size", NULL);
> - if (!size)
> + if (!size) {
> + of_node_put(np);
> return -ENODEV;
> + }
>
> pr_debug("%s: enabling PTCAL, size = 0x%x\n", __func__, *size);
> order = get_order(*size);
> diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c
> index 5876e88..3f2e557 100644
> --- a/arch/powerpc/platforms/cell/spider-pic.c
> +++ b/arch/powerpc/platforms/cell/spider-pic.c
> @@ -258,8 +258,10 @@ static unsigned int __init spider_find_cascade_and_node(struct spider_pic *pic)
> return NO_IRQ;
> imap += intsize + 1;
> tmp = of_get_property(iic, "#interrupt-cells", NULL);
> - if (tmp == NULL)
> + if (tmp == NULL) {
> + of_node_put(iic);
> return NO_IRQ;
> + }
> intsize = *tmp;
> /* Assume unit is last entry of interrupt specifier */
> unit = imap[intsize - 1];
>
WARNING: multiple messages have this Message-ID (diff)
From: Grant Likely <grant.likely@secretlab.ca>
To: Julia Lawall <julia@diku.dk>
Cc: Arnd Bergmann <arnd@arndb.de>,
kernel-janitors@vger.kernel.org,
Benjamin Herrenschmidt <benh@kernel.crashing.org>,
Paul Mackerras <paulus@samba.org>,
linuxppc-dev@lists.ozlabs.org, cbe-oss-dev@lists.ozlabs.org,
linux-kernel@vger.kernel.org,
devicetree-discuss@lists.ozlabs.org
Subject: Re: [PATCH 7/7] arch/powerpc/platforms/cell: Add of_node_put to avoid memory leak
Date: Wed, 8 Sep 2010 13:46:58 -0600 [thread overview]
Message-ID: <20100908194658.GA7065@angua.secretlab.ca> (raw)
In-Reply-To: <1283075566-27441-8-git-send-email-julia@diku.dk>
On Sun, Aug 29, 2010 at 11:52:46AM +0200, Julia Lawall wrote:
> Add calls to of_node_put in the error handling code following calls to
> of_find_node_by_path and of_find_node_by_phandle.
>
> The semantic match that finds this problem is as follows:
> (http://coccinelle.lip6.fr/)
>
> // <smpl>
> @r exists@
> local idexpression x;
> expression E,E1;
> statement S;
> @@
>
> *x =
> (of_find_node_by_path
> |of_find_node_by_name
> |of_find_node_by_phandle
> |of_get_parent
> |of_get_next_parent
> |of_get_next_child
> |of_find_compatible_node
> |of_match_node
> )(...);
> ...
> if (x == NULL) S
> <... when != x = E
> *if (...) {
> ... when != of_node_put(x)
> when != if (...) { ... of_node_put(x); ... }
> (
> return <+...x...+>;
> |
> * return ...;
> )
> }
> ...>
> of_node_put(x);
> // </smpl>
>
> Signed-off-by: Julia Lawall <julia@diku.dk>
Acked-by: Grant Likely <grant.likely@secretlab.ca>
>
> ---
> arch/powerpc/platforms/cell/ras.c | 4 +++-
> arch/powerpc/platforms/cell/spider-pic.c | 4 +++-
> 2 files changed, 6 insertions(+), 2 deletions(-)
>
> diff --git a/arch/powerpc/platforms/cell/ras.c b/arch/powerpc/platforms/cell/ras.c
> index 1d3c4ef..5ec1e47 100644
> --- a/arch/powerpc/platforms/cell/ras.c
> +++ b/arch/powerpc/platforms/cell/ras.c
> @@ -173,8 +173,10 @@ static int __init cbe_ptcal_enable(void)
> return -ENODEV;
>
> size = of_get_property(np, "ibm,cbe-ptcal-size", NULL);
> - if (!size)
> + if (!size) {
> + of_node_put(np);
> return -ENODEV;
> + }
>
> pr_debug("%s: enabling PTCAL, size = 0x%x\n", __func__, *size);
> order = get_order(*size);
> diff --git a/arch/powerpc/platforms/cell/spider-pic.c b/arch/powerpc/platforms/cell/spider-pic.c
> index 5876e88..3f2e557 100644
> --- a/arch/powerpc/platforms/cell/spider-pic.c
> +++ b/arch/powerpc/platforms/cell/spider-pic.c
> @@ -258,8 +258,10 @@ static unsigned int __init spider_find_cascade_and_node(struct spider_pic *pic)
> return NO_IRQ;
> imap += intsize + 1;
> tmp = of_get_property(iic, "#interrupt-cells", NULL);
> - if (tmp == NULL)
> + if (tmp == NULL) {
> + of_node_put(iic);
> return NO_IRQ;
> + }
> intsize = *tmp;
> /* Assume unit is last entry of interrupt specifier */
> unit = imap[intsize - 1];
>
next prev parent reply other threads:[~2010-09-08 19:46 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-08-29 9:52 [PATCH 0/7] Add of_node_put to avoid memory leak Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` [PATCH 2/7] drivers/serial/mpc52xx_uart.c: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 15:42 ` [PATCH 2/7] drivers/serial/mpc52xx_uart.c: Add of_node_put to Wolfram Sang
2010-08-29 15:42 ` [PATCH 2/7] drivers/serial/mpc52xx_uart.c: Add of_node_put to avoid memory leak Wolfram Sang
2010-08-29 15:42 ` Wolfram Sang
[not found] ` <1283075566-27441-1-git-send-email-julia-dAYI7NvHqcQ@public.gmane.org>
2010-08-29 9:52 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-31 15:49 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put walter harms
2010-08-31 15:49 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to avoid memory leak walter harms
2010-08-31 15:49 ` walter harms
[not found] ` <4C7D247F.4060500-fPG8STNUNVg@public.gmane.org>
2010-08-31 16:08 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to Julia Lawall
2010-08-31 16:08 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to avoid memory leak Julia Lawall
2010-08-31 16:08 ` Julia Lawall
2010-08-31 16:08 ` Julia Lawall
[not found] ` <Pine.LNX.4.64.1008311807470.2668-QfmoRoYWmW9knbxzx/v8hQ@public.gmane.org>
2010-08-31 16:13 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put Grant Likely
2010-08-31 16:13 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to avoid memory leak Grant Likely
2010-08-31 16:13 ` Grant Likely
2010-08-31 16:13 ` Grant Likely
2010-08-31 16:16 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put Vasiliy Kulikov
2010-08-31 16:16 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to avoid memory leak Vasiliy Kulikov
2010-08-31 16:16 ` Vasiliy Kulikov
2010-08-31 16:16 ` Vasiliy Kulikov
2010-08-31 16:33 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to Grant Likely
2010-08-31 16:33 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to avoid memory leak Grant Likely
2010-08-31 16:33 ` Grant Likely
2010-09-01 15:03 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put walter harms
2010-09-01 15:03 ` [PATCH 1/7] drivers/macintosh/via-pmu-led.c: Add of_node_put to avoid memory leak walter harms
2010-09-01 15:03 ` walter harms
2010-08-29 9:52 ` [PATCH 3/7] drivers/mtd/nand/mpc5121_nfc.c: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
[not found] ` <1283075566-27441-4-git-send-email-julia-dAYI7NvHqcQ@public.gmane.org>
2010-08-29 15:47 ` [PATCH 3/7] drivers/mtd/nand/mpc5121_nfc.c: Add of_node_put to Wolfram Sang
2010-08-29 15:47 ` [PATCH 3/7] drivers/mtd/nand/mpc5121_nfc.c: Add of_node_put to avoid memory leak Wolfram Sang
2010-08-29 15:47 ` Wolfram Sang
2010-08-29 15:47 ` Wolfram Sang
2010-08-30 13:13 ` [PATCH 3/7] drivers/mtd/nand/mpc5121_nfc.c: Add of_node_put to Artem Bityutskiy
2010-08-30 13:13 ` [PATCH 3/7] drivers/mtd/nand/mpc5121_nfc.c: Add of_node_put to avoid memory leak Artem Bityutskiy
2010-08-30 13:13 ` Artem Bityutskiy
2010-08-29 9:52 ` [PATCH 4/7] arch/powerpc/platforms/powermac/pfunc_core.c: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-09-08 19:54 ` [PATCH 4/7] arch/powerpc/platforms/powermac/pfunc_core.c: Add Grant Likely
2010-09-08 19:54 ` [PATCH 4/7] arch/powerpc/platforms/powermac/pfunc_core.c: Add of_node_put to avoid memory leak Grant Likely
2010-09-08 19:54 ` Grant Likely
2010-08-29 9:52 ` [PATCH 5/7] arch/powerpc/sysdev/qe_lib/qe.c: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-30 20:39 ` [PATCH 5/7] arch/powerpc/sysdev/qe_lib/qe.c: Add of_node_put Timur Tabi
2010-08-30 20:39 ` [PATCH 5/7] arch/powerpc/sysdev/qe_lib/qe.c: Add of_node_put to avoid memory leak Timur Tabi
2010-08-30 20:39 ` Timur Tabi
[not found] ` <1283075566-27441-6-git-send-email-julia-dAYI7NvHqcQ@public.gmane.org>
2010-08-31 21:41 ` Kumar Gala
2010-08-31 21:41 ` Kumar Gala
2010-08-31 21:41 ` Kumar Gala
2010-08-31 21:41 ` Kumar Gala
2010-08-29 9:52 ` [PATCH 6/7] arch/powerpc/platforms/maple/setup.c: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
[not found] ` <1283075566-27441-7-git-send-email-julia-dAYI7NvHqcQ@public.gmane.org>
2010-09-08 19:51 ` [PATCH 6/7] arch/powerpc/platforms/maple/setup.c: Add Grant Likely
2010-09-08 19:51 ` [PATCH 6/7] arch/powerpc/platforms/maple/setup.c: Add of_node_put to avoid memory leak Grant Likely
2010-09-08 19:51 ` Grant Likely
2010-09-08 19:51 ` Grant Likely
2010-08-29 9:52 ` [PATCH 7/7] arch/powerpc/platforms/cell: " Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-08-29 9:52 ` Julia Lawall
2010-09-08 19:46 ` Grant Likely [this message]
2010-09-08 19:46 ` Grant Likely
2010-09-08 19:46 ` Grant Likely
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=20100908194658.GA7065@angua.secretlab.ca \
--to=grant.likely@secretlab.ca \
--cc=arnd@arndb.de \
--cc=benh@kernel.crashing.org \
--cc=cbe-oss-dev@lists.ozlabs.org \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=julia@diku.dk \
--cc=kernel-janitors@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=paulus@samba.org \
/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: link
Be 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.