From: Emil Goode <emilgoode@gmail.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH] ARM: imx: introduce function imx_free_mx3_camera
Date: Thu, 22 May 2014 18:58:38 +0000 [thread overview]
Message-ID: <20140522185838.GB7348@lianli> (raw)
In-Reply-To: <20140522181024.GA20155@pengutronix.de>
Hello Uwe,
On Thu, May 22, 2014 at 08:10:24PM +0200, Uwe Kleine-König wrote:
> Hello Emil,
>
> On Thu, May 22, 2014 at 07:51:19PM +0200, Emil Goode wrote:
> > We forgot to free pdev->dev.dma_mask on error after
> > having called the imx_alloc_mx3_camera function.
> > This patch introduces the imx_free_mx3_camera function
> > that adds the missing kfree call and is practical for
> > future usage with imx_alloc_mx3_camera().
> >
> > Signed-off-by: Emil Goode <emilgoode@gmail.com>
> > ---
> > arch/arm/mach-imx/devices-imx31.h | 2 ++
> > arch/arm/mach-imx/devices-imx35.h | 2 ++
> > arch/arm/mach-imx/devices/devices-common.h | 1 +
> > arch/arm/mach-imx/devices/platform-ipu-core.c | 11 +++++++++--
> > arch/arm/mach-imx/mach-mx31_3ds.c | 2 +-
> > arch/arm/mach-imx/mach-mx31moboard.c | 3 +--
> > arch/arm/mach-imx/mach-mx35_3ds.c | 2 +-
> > arch/arm/mach-imx/mach-pcm037.c | 2 +-
> > 8 files changed, 18 insertions(+), 7 deletions(-)
> >
> > diff --git a/arch/arm/mach-imx/devices-imx31.h b/arch/arm/mach-imx/devices-imx31.h
> > index e8d1611..900d3b0 100644
> > --- a/arch/arm/mach-imx/devices-imx31.h
> > +++ b/arch/arm/mach-imx/devices-imx31.h
> > @@ -45,6 +45,8 @@ extern const struct imx_ipu_core_data imx31_ipu_core_data;
> > imx_add_ipu_core(&imx31_ipu_core_data)
> > #define imx31_alloc_mx3_camera(pdata) \
> > imx_alloc_mx3_camera(&imx31_ipu_core_data, pdata)
> > +#define imx31_free_mx3_camera(pdev) \
> > + imx_free_mx3_camera(pdev)
> I wouldn't make this a globally visible function. Today all imx machines
> should get their devices from an oftree, so the various functions to add
> devices started to bitrot. Moreover there is no reason to remove a
> device once it was successfully added.
Ok I see. In mx31_3ds_init_camera() there are two checks that could fail
before the device is added though.
> Note that platform_device_register_full has the same problem (i.e.
> pdev->dev.dma_mask isn't freed when the last reference to a device is
> dropped.) You'd do a better deed if you picked up
> http://thread.gmane.org/gmane.linux.kernel/1613364/focus\x1635995
> instead of fixing dead code. But feel free to choose yourself where you
> want to patch.
Thank you for the hint, I was about to leave this code alone and move on
but couldn't resist one more patch :) Yes I realized that leaking dma_mask
is a general problem, I will look into that thread, thanks.
Best regards,
Emil Goode
--
To unsubscribe from this list: send the line "unsubscribe kernel-janitors" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: emilgoode@gmail.com (Emil Goode)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH] ARM: imx: introduce function imx_free_mx3_camera
Date: Thu, 22 May 2014 20:58:38 +0200 [thread overview]
Message-ID: <20140522185838.GB7348@lianli> (raw)
In-Reply-To: <20140522181024.GA20155@pengutronix.de>
Hello Uwe,
On Thu, May 22, 2014 at 08:10:24PM +0200, Uwe Kleine-K?nig wrote:
> Hello Emil,
>
> On Thu, May 22, 2014 at 07:51:19PM +0200, Emil Goode wrote:
> > We forgot to free pdev->dev.dma_mask on error after
> > having called the imx_alloc_mx3_camera function.
> > This patch introduces the imx_free_mx3_camera function
> > that adds the missing kfree call and is practical for
> > future usage with imx_alloc_mx3_camera().
> >
> > Signed-off-by: Emil Goode <emilgoode@gmail.com>
> > ---
> > arch/arm/mach-imx/devices-imx31.h | 2 ++
> > arch/arm/mach-imx/devices-imx35.h | 2 ++
> > arch/arm/mach-imx/devices/devices-common.h | 1 +
> > arch/arm/mach-imx/devices/platform-ipu-core.c | 11 +++++++++--
> > arch/arm/mach-imx/mach-mx31_3ds.c | 2 +-
> > arch/arm/mach-imx/mach-mx31moboard.c | 3 +--
> > arch/arm/mach-imx/mach-mx35_3ds.c | 2 +-
> > arch/arm/mach-imx/mach-pcm037.c | 2 +-
> > 8 files changed, 18 insertions(+), 7 deletions(-)
> >
> > diff --git a/arch/arm/mach-imx/devices-imx31.h b/arch/arm/mach-imx/devices-imx31.h
> > index e8d1611..900d3b0 100644
> > --- a/arch/arm/mach-imx/devices-imx31.h
> > +++ b/arch/arm/mach-imx/devices-imx31.h
> > @@ -45,6 +45,8 @@ extern const struct imx_ipu_core_data imx31_ipu_core_data;
> > imx_add_ipu_core(&imx31_ipu_core_data)
> > #define imx31_alloc_mx3_camera(pdata) \
> > imx_alloc_mx3_camera(&imx31_ipu_core_data, pdata)
> > +#define imx31_free_mx3_camera(pdev) \
> > + imx_free_mx3_camera(pdev)
> I wouldn't make this a globally visible function. Today all imx machines
> should get their devices from an oftree, so the various functions to add
> devices started to bitrot. Moreover there is no reason to remove a
> device once it was successfully added.
Ok I see. In mx31_3ds_init_camera() there are two checks that could fail
before the device is added though.
> Note that platform_device_register_full has the same problem (i.e.
> pdev->dev.dma_mask isn't freed when the last reference to a device is
> dropped.) You'd do a better deed if you picked up
> http://thread.gmane.org/gmane.linux.kernel/1613364/focus=1635995
> instead of fixing dead code. But feel free to choose yourself where you
> want to patch.
Thank you for the hint, I was about to leave this code alone and move on
but couldn't resist one more patch :) Yes I realized that leaking dma_mask
is a general problem, I will look into that thread, thanks.
Best regards,
Emil Goode
WARNING: multiple messages have this Message-ID (diff)
From: Emil Goode <emilgoode@gmail.com>
To: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>
Cc: Shawn Guo <shawn.guo@freescale.com>,
Sascha Hauer <kernel@pengutronix.de>,
Russell King <linux@arm.linux.org.uk>,
Dan Carpenter <dan.carpenter@oracle.com>,
Alexander Shiyan <shc_work@mail.ru>,
Marc Kleine-Budde <mkl@pengutronix.de>,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org, kernel-janitors@vger.kernel.org
Subject: Re: [PATCH] ARM: imx: introduce function imx_free_mx3_camera
Date: Thu, 22 May 2014 20:58:38 +0200 [thread overview]
Message-ID: <20140522185838.GB7348@lianli> (raw)
In-Reply-To: <20140522181024.GA20155@pengutronix.de>
Hello Uwe,
On Thu, May 22, 2014 at 08:10:24PM +0200, Uwe Kleine-König wrote:
> Hello Emil,
>
> On Thu, May 22, 2014 at 07:51:19PM +0200, Emil Goode wrote:
> > We forgot to free pdev->dev.dma_mask on error after
> > having called the imx_alloc_mx3_camera function.
> > This patch introduces the imx_free_mx3_camera function
> > that adds the missing kfree call and is practical for
> > future usage with imx_alloc_mx3_camera().
> >
> > Signed-off-by: Emil Goode <emilgoode@gmail.com>
> > ---
> > arch/arm/mach-imx/devices-imx31.h | 2 ++
> > arch/arm/mach-imx/devices-imx35.h | 2 ++
> > arch/arm/mach-imx/devices/devices-common.h | 1 +
> > arch/arm/mach-imx/devices/platform-ipu-core.c | 11 +++++++++--
> > arch/arm/mach-imx/mach-mx31_3ds.c | 2 +-
> > arch/arm/mach-imx/mach-mx31moboard.c | 3 +--
> > arch/arm/mach-imx/mach-mx35_3ds.c | 2 +-
> > arch/arm/mach-imx/mach-pcm037.c | 2 +-
> > 8 files changed, 18 insertions(+), 7 deletions(-)
> >
> > diff --git a/arch/arm/mach-imx/devices-imx31.h b/arch/arm/mach-imx/devices-imx31.h
> > index e8d1611..900d3b0 100644
> > --- a/arch/arm/mach-imx/devices-imx31.h
> > +++ b/arch/arm/mach-imx/devices-imx31.h
> > @@ -45,6 +45,8 @@ extern const struct imx_ipu_core_data imx31_ipu_core_data;
> > imx_add_ipu_core(&imx31_ipu_core_data)
> > #define imx31_alloc_mx3_camera(pdata) \
> > imx_alloc_mx3_camera(&imx31_ipu_core_data, pdata)
> > +#define imx31_free_mx3_camera(pdev) \
> > + imx_free_mx3_camera(pdev)
> I wouldn't make this a globally visible function. Today all imx machines
> should get their devices from an oftree, so the various functions to add
> devices started to bitrot. Moreover there is no reason to remove a
> device once it was successfully added.
Ok I see. In mx31_3ds_init_camera() there are two checks that could fail
before the device is added though.
> Note that platform_device_register_full has the same problem (i.e.
> pdev->dev.dma_mask isn't freed when the last reference to a device is
> dropped.) You'd do a better deed if you picked up
> http://thread.gmane.org/gmane.linux.kernel/1613364/focus=1635995
> instead of fixing dead code. But feel free to choose yourself where you
> want to patch.
Thank you for the hint, I was about to leave this code alone and move on
but couldn't resist one more patch :) Yes I realized that leaking dma_mask
is a general problem, I will look into that thread, thanks.
Best regards,
Emil Goode
next prev parent reply other threads:[~2014-05-22 18:58 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-22 17:51 [PATCH] ARM: imx: introduce function imx_free_mx3_camera Emil Goode
2014-05-22 17:51 ` Emil Goode
2014-05-22 17:51 ` Emil Goode
2014-05-22 18:10 ` Uwe Kleine-König
2014-05-22 18:10 ` Uwe Kleine-König
2014-05-22 18:10 ` Uwe Kleine-König
2014-05-22 18:58 ` Emil Goode [this message]
2014-05-22 18:58 ` Emil Goode
2014-05-22 18:58 ` Emil Goode
2014-05-23 6:50 ` Philippe Rétornaz
2014-05-23 6:50 ` Philippe Rétornaz
2014-05-23 6:50 ` Philippe Rétornaz
2014-05-24 15:22 ` Emil Goode
2014-05-24 15:22 ` Emil Goode
2014-05-24 15:22 ` Emil Goode
2014-05-24 20:05 ` Greg Kroah-Hartman
2014-05-24 20:05 ` Greg Kroah-Hartman
2014-05-24 20:05 ` Greg Kroah-Hartman
2014-05-24 21:17 ` Uwe Kleine-König
2014-05-24 21:17 ` Uwe Kleine-König
2014-05-24 21:17 ` Uwe Kleine-König
2014-05-22 20:44 ` Dan Carpenter
2014-05-22 20:44 ` Dan Carpenter
2014-05-22 20:44 ` Dan Carpenter
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=20140522185838.GB7348@lianli \
--to=emilgoode@gmail.com \
--cc=linux-arm-kernel@lists.infradead.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.