linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Barry Song <21cnbao@gmail.com>
To: Wolfram Sang <w.sang@pengutronix.de>
Cc: Barry Song <Barry.Song@csr.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Greg Kroah-Hartman <gregkh@suse.de>,
	linux-kernel@vger.kernel.org, workgroup.linux@csr.com,
	Erik Gilling <konkers@google.com>,
	Grant Likely <grant.likely@secretlab.ca>,
	linux-mtd@lists.infradead.org, Barry Song <Baohua.Song@csr.com>,
	David Woodhouse <dwmw2@infradead.org>,
	Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Subject: Re: [PATCH 1/3] platform: add common resource requesting and mapping helper
Date: Tue, 31 Jan 2012 20:09:19 +0800	[thread overview]
Message-ID: <CAGsJ_4zM=6ivn0uCtP4wsS67U77uHd5nVZQ-LP1vS07AE3dMxQ@mail.gmail.com> (raw)
In-Reply-To: <20120131113358.GM2471@pengutronix.de>

hi Wolfram,

2012/1/31 Wolfram Sang <w.sang@pengutronix.de>:
> Barry,
>
>> > You don't need to do the error checking for 'res'. You can simply do
>> >
>> > res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
>> > base = devm_request_and_ioremap(&dev->dev, res);
>>
>> i do know  devm_request_and_ioremap() does res checking. but that is
>> implicit, confused and not a smart way actually.
>
> I agree about the implicit thing (keep in mind the function is new). But
> calling a function "not smart" because it checks its arguments? I do
> like the NULL check of kfree() for example.

i didn't mean it is not smart for devm_request_and_ioremap() to check
its param. that is definitely ok.
i mean it is not smart for people to depend on another function to do
implicit check on what they should check by themselves.
>
>> actually, no people by now really use the implicit checking. that
>> shows people don't really think that is a good programming way.
>
> I'd think most people just copy&paste and don't have an opinion either
> way, so the quantity doesn't show much.
>
>> > devm_request_and_ioremap() will check res. Given that, I don't think
>> > we can save a lot with another wrapper.
>>
>> i think we can save some.
>> The story begins from Grant's feedback in:
>> http://www.spinics.net/lists/arm-kernel/msg157644.html
>
> I am not sure using 'platform_devm_request_and_ioremap' and later using
> plain 'devm_*' functions (without platform_-prefix) is less confusing.
> The alternative would be to check which helper functions also use
> 'struct resource' and if they do checks on that. If all do that, you
> would have the simple rule, that you only need to check yourself if you
> access it yourself.

it is just a helper, just like clk_disable_unprepare() which do
clk_disable() + clk_unprepare().

>
> Regards,
>
>   Wolfram
>
> --
> Pengutronix e.K.                           | Wolfram Sang                |
> Industrial Linux Solutions                 | http://www.pengutronix.de/  |
-barry

  reply	other threads:[~2012-01-31 12:09 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-01-31  9:59 [PATCH 0/3] platform: add platform_devm_request_and_ioremap() common API Barry Song
2012-01-31 10:00 ` [PATCH 1/3] platform: add common resource requesting and mapping helper Barry Song
2012-01-31 10:17   ` Wolfram Sang
2012-01-31 11:04     ` Barry Song
2012-01-31 11:33       ` Wolfram Sang
2012-01-31 12:09         ` Barry Song [this message]
2012-01-31 20:34         ` Grant Likely
2012-01-31 21:15           ` Wolfram Sang
2012-01-31 21:51             ` Grant Likely
2012-02-01  2:11             ` Barry Song
2012-02-01 10:03               ` Wolfram Sang
2012-02-01 10:20                 ` Barry Song
2012-02-01 12:56               ` Mark Brown
2012-02-02  0:10                 ` Grant Likely
2012-01-31 20:35   ` Grant Likely
2012-01-31 21:20   ` Linus Walleij
2012-01-31 21:52     ` Grant Likely
2012-02-01  2:22     ` Barry Song
2012-01-31 10:00 ` [PATCH 2/3] GPIO: TEGRA: move to use platform_devm_request_and_ioremap() helper Barry Song
2012-01-31 16:55   ` Stephen Warren
2012-01-31 20:37   ` Grant Likely
2012-01-31 10:00 ` [PATCH 3/3] MTD: NAND: txx9ndfmc: " Barry Song
2012-01-31 11:14 ` [PATCH 0/3] platform: add platform_devm_request_and_ioremap() common API Artem Bityutskiy
2012-01-31 12:57   ` Barry Song
2012-01-31 13:16     ` Artem Bityutskiy
2012-01-31 13:23       ` Artem Bityutskiy
2012-01-31 13:27         ` Wolfram Sang

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='CAGsJ_4zM=6ivn0uCtP4wsS67U77uHd5nVZQ-LP1vS07AE3dMxQ@mail.gmail.com' \
    --to=21cnbao@gmail.com \
    --cc=Baohua.Song@csr.com \
    --cc=Barry.Song@csr.com \
    --cc=anemo@mba.ocn.ne.jp \
    --cc=dwmw2@infradead.org \
    --cc=grant.likely@secretlab.ca \
    --cc=gregkh@suse.de \
    --cc=konkers@google.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=w.sang@pengutronix.de \
    --cc=workgroup.linux@csr.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: 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).