* [PATCH] of/irq: init struct resource to 0 in of_irq_to_resource() @ 2013-07-18 10:24 Sebastian Andrzej Siewior [not found] ` <1374143050-25848-1-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 0 siblings, 1 reply; 5+ messages in thread From: Sebastian Andrzej Siewior @ 2013-07-18 10:24 UTC (permalink / raw) To: Grant Likely Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, Sebastian Andrzej Siewior, Rob Herring It almost does not matter because most users use only the ->start member of the struct. However if this struct is passed to a platform device which is then added via platform_device_add() then the ->parent member is also used. Signed-off-by: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> --- drivers/of/irq.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/of/irq.c b/drivers/of/irq.c index a3c1c5a..e0a72fb 100644 --- a/drivers/of/irq.c +++ b/drivers/of/irq.c @@ -345,6 +345,7 @@ int of_irq_to_resource(struct device_node *dev, int index, struct resource *r) if (r && irq) { const char *name = NULL; + memset(r, 0, sizeof(*r)); /* * Get optional "interrupts-names" property to add a name * to the resource. -- 1.8.3.2 ^ permalink raw reply related [flat|nested] 5+ messages in thread
[parent not found: <1374143050-25848-1-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>]
* Re: [PATCH] of/irq: init struct resource to 0 in of_irq_to_resource() [not found] ` <1374143050-25848-1-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> @ 2013-07-19 2:49 ` Rob Herring [not found] ` <51E8A937.9030109-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 0 siblings, 1 reply; 5+ messages in thread From: Rob Herring @ 2013-07-19 2:49 UTC (permalink / raw) To: Sebastian Andrzej Siewior Cc: Grant Likely, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, Rob Herring On 07/18/2013 05:24 AM, Sebastian Andrzej Siewior wrote: > It almost does not matter because most users use only the ->start member > of the struct. However if this struct is passed to a platform device > which is then added via platform_device_add() then the ->parent member is > also used. Most users don't use the resource struct at all. The ones that do, all seem to do a memset beforehand. So I think current behavior is correct. There are some occurrences that pass a resource in, but then don't actually use the resource. Those we should fix. Rob > > Signed-off-by: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> > --- > drivers/of/irq.c | 1 + > 1 file changed, 1 insearch/powerpc/sysdev/mv64x60_dev.crtion(+) > > diff --git a/drivers/of/irq.c b/drivers/of/irq.c > index a3c1c5a..e0a72fb 100644 > --- a/drivers/of/irq.c > +++ b/drivers/of/irq.c > @@ -345,6 +345,7 @@ int of_irq_to_resource(struct device_node *dev, int index, struct resource *r) > if (r && irq) { > const char *name = NULL; > > + memset(r, 0, sizeof(*r)); > /* > * Get optional "interrupts-names" property to add a name > * to the resource. > ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <51E8A937.9030109-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>]
* Re: [PATCH] of/irq: init struct resource to 0 in of_irq_to_resource() [not found] ` <51E8A937.9030109-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> @ 2013-07-19 6:57 ` Sebastian Andrzej Siewior [not found] ` <51E8E359.2030908-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-07-20 5:55 ` Grant Likely 1 sibling, 1 reply; 5+ messages in thread From: Sebastian Andrzej Siewior @ 2013-07-19 6:57 UTC (permalink / raw) To: Rob Herring Cc: Grant Likely, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, Rob Herring On 07/19/2013 04:49 AM, Rob Herring wrote: > On 07/18/2013 05:24 AM, Sebastian Andrzej Siewior wrote: >> It almost does not matter because most users use only the ->start member >> of the struct. However if this struct is passed to a platform device >> which is then added via platform_device_add() then the ->parent member is >> also used. > > Most users don't use the resource struct at all. The ones that do, all > seem to do a memset beforehand. So I think current behavior is correct. Seriously? That is your argument here? Most users use memset() beforehand and that makes it correct? Now look at this: you pass a pointer to fill out a struct and you don't do it properly. There is of_address_to_resource() which does a memset() why is okay here use memset()? > > There are some occurrences that pass a resource in, but then don't > actually use the resource. Those we should fix. > > Rob > >> >> Signed-off-by: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> >> --- >> drivers/of/irq.c | 1 + >> 1 file changed, 1 insearch/powerpc/sysdev/mv64x60_dev.crtion(+) >> >> diff --git a/drivers/of/irq.c b/drivers/of/irq.c >> index a3c1c5a..e0a72fb 100644 >> --- a/drivers/of/irq.c >> +++ b/drivers/of/irq.c >> @@ -345,6 +345,7 @@ int of_irq_to_resource(struct device_node *dev, int index, struct resource *r) >> if (r && irq) { >> const char *name = NULL; >> >> + memset(r, 0, sizeof(*r)); >> /* >> * Get optional "interrupts-names" property to add a name >> * to the resource. >> > Sebastian ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <51E8E359.2030908-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org>]
* Re: [PATCH] of/irq: init struct resource to 0 in of_irq_to_resource() [not found] ` <51E8E359.2030908-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> @ 2013-07-20 2:48 ` Rob Herring 0 siblings, 0 replies; 5+ messages in thread From: Rob Herring @ 2013-07-20 2:48 UTC (permalink / raw) To: Sebastian Andrzej Siewior Cc: Grant Likely, devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org, Rob Herring On Fri, Jul 19, 2013 at 1:57 AM, Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> wrote: > On 07/19/2013 04:49 AM, Rob Herring wrote: >> On 07/18/2013 05:24 AM, Sebastian Andrzej Siewior wrote: >>> It almost does not matter because most users use only the ->start member >>> of the struct. However if this struct is passed to a platform device >>> which is then added via platform_device_add() then the ->parent member is >>> also used. >> >> Most users don't use the resource struct at all. The ones that do, all >> seem to do a memset beforehand. So I think current behavior is correct. > > Seriously? That is your argument here? Most users use memset() > beforehand and that makes it correct? Now look at this: you pass a > pointer to fill out a struct and you don't do it properly. >From a standpoint of initializing variables close to the point it is allocated, yes. > There is of_address_to_resource() which does a memset() why is okay > here use memset()? Fair enough. Consistency is important too. Rather than a memset, I'd rather see the 3 remaining fields initialized and avoid setting most of them twice. Rob > >> >> There are some occurrences that pass a resource in, but then don't >> actually use the resource. Those we should fix. > > > >> >> Rob >> >>> >>> Signed-off-by: Sebastian Andrzej Siewior <bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> >>> --- >>> drivers/of/irq.c | 1 + >>> 1 file changed, 1 insearch/powerpc/sysdev/mv64x60_dev.crtion(+) >>> >>> diff --git a/drivers/of/irq.c b/drivers/of/irq.c >>> index a3c1c5a..e0a72fb 100644 >>> --- a/drivers/of/irq.c >>> +++ b/drivers/of/irq.c >>> @@ -345,6 +345,7 @@ int of_irq_to_resource(struct device_node *dev, int index, struct resource *r) >>> if (r && irq) { >>> const char *name = NULL; >>> >>> + memset(r, 0, sizeof(*r)); >>> /* >>> * Get optional "interrupts-names" property to add a name >>> * to the resource. >>> >> > > Sebastian ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [PATCH] of/irq: init struct resource to 0 in of_irq_to_resource() [not found] ` <51E8A937.9030109-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2013-07-19 6:57 ` Sebastian Andrzej Siewior @ 2013-07-20 5:55 ` Grant Likely 1 sibling, 0 replies; 5+ messages in thread From: Grant Likely @ 2013-07-20 5:55 UTC (permalink / raw) To: Rob Herring, Sebastian Andrzej Siewior Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ, Rob Herring On Thu, 18 Jul 2013 21:49:27 -0500, Rob Herring <robherring2-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> wrote: > On 07/18/2013 05:24 AM, Sebastian Andrzej Siewior wrote: > > It almost does not matter because most users use only the ->start member > > of the struct. However if this struct is passed to a platform device > > which is then added via platform_device_add() then the ->parent member is > > also used. > > Most users don't use the resource struct at all. The ones that do, all > seem to do a memset beforehand. So I think current behavior is correct. > > There are some occurrences that pass a resource in, but then don't > actually use the resource. Those we should fix. It's a reasonable safeguard though. I'm going to apply it. g. ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-07-20 5:55 UTC | newest] Thread overview: 5+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-07-18 10:24 [PATCH] of/irq: init struct resource to 0 in of_irq_to_resource() Sebastian Andrzej Siewior [not found] ` <1374143050-25848-1-git-send-email-bigeasy-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-07-19 2:49 ` Rob Herring [not found] ` <51E8A937.9030109-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> 2013-07-19 6:57 ` Sebastian Andrzej Siewior [not found] ` <51E8E359.2030908-hfZtesqFncYOwBW4kG4KsQ@public.gmane.org> 2013-07-20 2:48 ` Rob Herring 2013-07-20 5:55 ` Grant Likely
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).