linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Cc: linux-mmc@vger.kernel.org, linux-sh@vger.kernel.org
Subject: Re: [PATCH 04/29] regulator: fix devm_regulator_put() to call regulator_put() explicitly
Date: Thu, 03 May 2012 16:56:07 +0000	[thread overview]
Message-ID: <20120503165606.GR3955@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <1336057558-11031-5-git-send-email-g.liakhovetski@gmx.de>

[-- Attachment #1: Type: text/plain, Size: 1120 bytes --]

On Thu, May 03, 2012 at 05:05:33PM +0200, Guennadi Liakhovetski wrote:
> devres_destroy() doesn't call the release() method, it only destroys the
> resource. The caller should take care to release the associated object
> itself.

> +	regulator_put(regulator);
>  	rc = devres_destroy(regulator->dev, devm_regulator_release,
>  			    devm_regulator_match, regulator);

Oh dear.  This seems like pretty peculiar behaviour on the part of
devres_destroy() - everything about the function and its documentation
would suggest that it'd actually free the resource not just free the
devm_ internal bits of the resource, and especially given that we have
to pass the release function in.

This also seems like it's the wrong way round - it probably shouldn't
matter that much but we should really only do the regulator_put() after
the destroy succeeded since there's a small chance that hotplug or
something might cause this to run while the device is being removed
elsewhere so we could end up trying to double free.

Also, this patch is totally unrelated to the rest of the series and
should really have been sent separately.

[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

  reply	other threads:[~2012-05-03 16:56 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-03 15:05 [PATCH 00/29] mmc: mmcif and tmio regulator and OF support Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 01/29] mmc: sh_mmcif: remove redundant .down_pwr() callback Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 02/29] sh: ecovec: remove unused .down_pwr() MMCIF callback Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 03/29] mmc: sh_mmcif: remove unused .down_pwr() callback Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 04/29] regulator: fix devm_regulator_put() to call regulator_put() explicitly Guennadi Liakhovetski
2012-05-03 16:56   ` Mark Brown [this message]
2012-05-18  8:54     ` Guennadi Liakhovetski
2012-05-18 15:10       ` Mark Brown
2012-05-03 15:05 ` [PATCH 05/29] regulator: use IS_ERR_OR_NULL() instead of open-coding Guennadi Liakhovetski
2012-05-03 15:32   ` Mark Brown
2012-05-18  8:44     ` Guennadi Liakhovetski
2012-05-18  8:57     ` Paul Mundt
2012-05-18  9:18       ` Guennadi Liakhovetski
2012-05-18  9:19         ` Paul Mundt
2012-05-18 15:04       ` Mark Brown
2012-06-11 11:38         ` Guennadi Liakhovetski
2012-06-11 11:51           ` Mark Brown
2012-06-11 12:06             ` Guennadi Liakhovetski
2012-06-11 12:15               ` Mark Brown
2012-05-03 15:05 ` [PATCH 06/29] regulator: export a function to check if regulator can change status Guennadi Liakhovetski
2012-05-03 15:25   ` Mark Brown
2012-05-18  8:33     ` Guennadi Liakhovetski
2012-05-18 15:08       ` Mark Brown
2012-05-18 15:23         ` Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 07/29] mmc: add a function to get a regulator, supplying card's Vdd Guennadi Liakhovetski
2012-05-03 15:42   ` Mark Brown
2012-05-18  9:28     ` Guennadi Liakhovetski
2012-05-18 15:18       ` Mark Brown
2012-05-18 15:39         ` Guennadi Liakhovetski
2012-05-18 16:04           ` Mark Brown
2012-05-03 15:05 ` [PATCH 08/29] mmc: sh_mmcif: add regulator support Guennadi Liakhovetski
2012-05-03 15:45   ` Mark Brown
2012-05-18  9:35     ` Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 09/29] mmc: tmio: stop interface clock before runtime PM suspending Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 10/29] mmc: tmio: don't needlessly enable interrupts during probing Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 11/29] mmc: tmio: add callbacks to enable-update and disable the interface clock Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 12/29] mmc: sdhi: implement tmio-mmc clock enable-update and disable callbacks Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 13/29] mmc: tmio: add regulator support Guennadi Liakhovetski
2012-05-03 15:56   ` Mark Brown
2012-05-18  9:55     ` Guennadi Liakhovetski
2012-05-18 15:34       ` Mark Brown
2012-05-03 15:05 ` [PATCH 14/29] mmc: sdhi: do not install dummy callbacks Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 15/29] mmc: extend and rename cd-gpio helpers to handle more slot GPIO functions Guennadi Liakhovetski
2012-05-17 14:28   ` S, Venkatraman
2012-05-03 15:05 ` [PATCH 16/29] mmc: tmio: use MMC opcode defines instead of numbers Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 17/29] mmc: use a more generic name for slot function types and fields Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 18/29] mmc: tmio: remove a duplicated comment line Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 19/29] mmc: add two capability flags for CD and WP signal polarity Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 20/29] mmc: add CD GPIO polling support to slot functions Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 21/29] mmc: convert slot functions to managed allocation Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 22/29] mmc: add WP pin handler to slot functions Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 23/29] mmc: tmio: use generic GPIO CD and WP handlers Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 24/29] mmc: add a simple generic OF parser Guennadi Liakhovetski
2012-05-04 18:26   ` Olof Johansson
2012-05-18  9:58     ` Guennadi Liakhovetski
2012-05-10  7:51   ` Magnus Damm
2012-05-03 15:05 ` [PATCH 25/29] mmc: tmio: add OF support Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 26/29] mmc: sdhi: add OF support, make platform data optional Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 27/29] mmc: mmcif: add OF support Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 28/29] mmc: mmcif: add support for generic GPIO CD polling Guennadi Liakhovetski
2012-05-03 15:05 ` [PATCH 29/29] sh: ecovec: switch MMC power control to regulators Guennadi Liakhovetski

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=20120503165606.GR3955@opensource.wolfsonmicro.com \
    --to=broonie@opensource.wolfsonmicro.com \
    --cc=g.liakhovetski@gmx.de \
    --cc=linux-mmc@vger.kernel.org \
    --cc=linux-sh@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).