From: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
To: Thierry Reding
<thierry.reding-RM9K5IK7kjKj5M59NBduVrNAH6kLmebB@public.gmane.org>
Cc: "Tony Lindgren" <tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>,
"Catalin Marinas" <catalin.marinas-5wv7dgnIgG8@public.gmane.org>,
"Daniel Walker" <dwalker-zu3NM2574RrQT0dZR+AlfA@public.gmane.org>,
"Russell King" <linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org>,
"Uwe Kleine-König"
<u.kleine-koenig-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>,
"David Brown" <davidb-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
"open list:ARM/QUALCOMM MSM..."
<linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
"Rob Herring"
<rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org>,
"Barry Song" <baohua.song-kQvG35nSl+M@public.gmane.org>,
"Thomas Gleixner" <tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>,
"open list:OMAP SUPPORT"
<linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"Andrew Victor" <linux-PelNFVqkFnVyf+4FbqDuWQ@public.gmane.org>,
"open list:ARM/ATMEL AT91RM9..."
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
"open list"
<linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
"Bryan Huntsman" <bryanh-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>,
"Richard Zhao"
<richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
"Sascha Hauer" <kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>,
"David Woodhouse" <dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
Subject: Re: [PATCH] irqdomain: Initialize number of IRQs for simple domains
Date: Fri, 6 Jan 2012 14:34:22 -0700 [thread overview]
Message-ID: <20120106213422.GF7457@ponder.secretlab.ca> (raw)
In-Reply-To: <20120106162016.GB5593-RM9K5IK7kjIQXX3q8xo1gnVAuStQJXxyR5q1nwbD4aMs9pC9oP6+/A@public.gmane.org>
On Fri, Jan 06, 2012 at 05:20:16PM +0100, Thierry Reding wrote:
> * Grant Likely wrote:
> > Hi Thierry,
> >
> > On Fri, Jan 6, 2012 at 7:28 AM, Thierry Reding
> > <thierry.reding-RM9K5IK7kjKj5M59NBduVrNAH6kLmebB@public.gmane.org> wrote:
> > > The irq_domain_add() function needs the number of interrupts in the
> > > domain to properly initialize them. In addition the allocated domain
> > > is now returned by the irq_domain_{add,generate}_simple() helpers.
> >
> > The commit text should also include the justification for renaming
> > irq_domain_create_simple() -> irq_domain_add_simple()
>
> Actually the commit only fixes up the comment. The function has always been
> called irq_domain_add_simple().
>
> For reference, this was introduced in commit 7e71330.
Hahaha. Oops, you're right. :-)
>
> > > domain = kzalloc(sizeof(*domain), GFP_KERNEL);
> > > - if (!domain) {
> > > - WARN_ON(1);
> > > - return;
> > > - }
> > > + if (!domain)
> > > + return ERR_PTR(-ENOMEM);
> >
> > Don't use the ERR_PTR() pattern (it's a horrible pattern IMHO).
>
> Returning NULL here is probably okay. Can the ERR_PTR stay in
> irq_domain_generate_simple(), though? It has two error conditions and
> handling both by returning NULL may not be what we want.
No. ERR_PTR is a horrible pattern because you cannot tell by looking
at a prototype that returns a pointer whether or not the correct
failure test is "if (!ptr)" or "if (IS_ERR(ptr))". Unless it is
absolutely critical for an error code to be returned (which isn't the
case here) I will not accept new code that uses ERR_PTR().
In this case, if irq_domain_add_simple() fails, then something is very
wrong. I'd much rather the routine complain loudly regardless of the
error condition.
Actually, looking again at irq_domain_generate_simple() it should
probably succeed even if it cannot find a matching node since an
irq_domain does more than just device tree translation. Although,
irq_domain_generate_simple() is a stop-gap solution that will
eventually be removed.
g.
next prev parent reply other threads:[~2012-01-06 21:34 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-01-06 14:28 [PATCH] irqdomain: Initialize number of IRQs for simple domains Thierry Reding
[not found] ` <1325860112-22051-1-git-send-email-thierry.reding-RM9K5IK7kjKj5M59NBduVrNAH6kLmebB@public.gmane.org>
2012-01-06 14:36 ` Nicolas Ferre
2012-01-06 15:04 ` Grant Likely
2012-01-06 16:20 ` Thierry Reding
[not found] ` <20120106162016.GB5593-RM9K5IK7kjIQXX3q8xo1gnVAuStQJXxyR5q1nwbD4aMs9pC9oP6+/A@public.gmane.org>
2012-01-06 21:34 ` Grant Likely [this message]
[not found] ` <20120106213422.GF7457-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2012-01-07 11:40 ` Thierry Reding
2012-01-06 16:58 ` Cousson, Benoit
2012-01-09 9:03 ` Thierry Reding
2012-01-07 5:58 ` Shawn Guo
[not found] ` <20120107055817.GG4790-rvtDTF3kK1ictlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2012-01-07 11:47 ` Thierry Reding
2012-01-06 16:07 ` David Brown
[not found] ` <20120106160744.GA7687-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2012-01-06 16:12 ` Thierry Reding
2012-01-06 16:26 ` Rob Herring
[not found] ` <4F0720A9.8070400-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2012-01-06 18:52 ` David Brown
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=20120106213422.GF7457@ponder.secretlab.ca \
--to=grant.likely-s3s/wqlpoipyb63q8fvjnq@public.gmane.org \
--cc=baohua.song-kQvG35nSl+M@public.gmane.org \
--cc=bryanh-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=catalin.marinas-5wv7dgnIgG8@public.gmane.org \
--cc=davidb-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org \
--cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
--cc=dwalker-zu3NM2574RrQT0dZR+AlfA@public.gmane.org \
--cc=dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=kernel-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
--cc=linux-PelNFVqkFnVyf+4FbqDuWQ@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-arm-msm-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-lFZ/pmaqli7XmaaqVzeoHQ@public.gmane.org \
--cc=linux-omap-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=richard.zhao-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
--cc=rob.herring-bsGFqQB8/DxBDgjK7y7TUQ@public.gmane.org \
--cc=tglx-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org \
--cc=thierry.reding-RM9K5IK7kjKj5M59NBduVrNAH6kLmebB@public.gmane.org \
--cc=tony-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org \
--cc=u.kleine-koenig-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.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).