Re: [PATCH] of: make sure of_alias is initialized before accessing it
On 09/08/2014 04:29 PM, Grant Likely wrote: > On Wed, 27 Aug 2014 17:09:39 +0300, Laurentiu Tudor > wrote: >> Simply swap of_alias and of_chosen initialization so >> that of_alias ends up read first. This must be done >> because it is accessed couple of lines below when >> trying to initialize the of_stdout using the alias >> based legacy method. >> >> [Fixes a752ee5 - tty: Update hypervisor tty drivers to >> >> use core stdout parsing code] >> >> Signed-off-by: Laurentiu Tudor >> Cc: Grant Likely >> --- >> drivers/of/base.c | 8 >> 1 file changed, 4 insertions(+), 4 deletions(-) >> >> diff --git a/drivers/of/base.c b/drivers/of/base.c >> index d8574ad..52f8506 100644 >> --- a/drivers/of/base.c >> +++ b/drivers/of/base.c >> @@ -1847,6 +1847,10 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 >> align)) >> { >> struct property *pp; >> >> +of_aliases = of_find_node_by_path("/aliases"); >> +if (!of_aliases) >> +return; >> + >> of_chosen = of_find_node_by_path("/chosen"); >> if (of_chosen == NULL) >> of_chosen = of_find_node_by_path("/chosen@0"); >> @@ -1862,10 +1866,6 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 >> align)) >> of_stdout = of_find_node_by_path(name); >> } >> >> -of_aliases = of_find_node_by_path("/aliases"); >> -if (!of_aliases) >> -return; >> - > > Close, but not quite. The 'if (!of_aliases)' test should not be moved. > Only the search for of_find_node_by_path(). Eek, completely missed this. Sorry. > I've fixed it up and applied. Thanks! --- Best Regards, Laurentiu ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev
Re: [PATCH] of: make sure of_alias is initialized before accessing it
On Wed, 27 Aug 2014 17:09:39 +0300, Laurentiu Tudor wrote: > Simply swap of_alias and of_chosen initialization so > that of_alias ends up read first. This must be done > because it is accessed couple of lines below when > trying to initialize the of_stdout using the alias > based legacy method. > > [Fixes a752ee5 - tty: Update hypervisor tty drivers to > > use core stdout parsing code] > > Signed-off-by: Laurentiu Tudor > Cc: Grant Likely > --- > drivers/of/base.c | 8 > 1 file changed, 4 insertions(+), 4 deletions(-) > > diff --git a/drivers/of/base.c b/drivers/of/base.c > index d8574ad..52f8506 100644 > --- a/drivers/of/base.c > +++ b/drivers/of/base.c > @@ -1847,6 +1847,10 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 > align)) > { > struct property *pp; > > + of_aliases = of_find_node_by_path("/aliases"); > + if (!of_aliases) > + return; > + > of_chosen = of_find_node_by_path("/chosen"); > if (of_chosen == NULL) > of_chosen = of_find_node_by_path("/chosen@0"); > @@ -1862,10 +1866,6 @@ void of_alias_scan(void * (*dt_alloc)(u64 size, u64 > align)) > of_stdout = of_find_node_by_path(name); > } > > - of_aliases = of_find_node_by_path("/aliases"); > - if (!of_aliases) > - return; > - Close, but not quite. The 'if (!of_aliases)' test should not be moved. Only the search for of_find_node_by_path(). I've fixed it up and applied. g. > for_each_property_of_node(of_aliases, pp) { > const char *start = pp->name; > const char *end = start + strlen(start); > -- > 1.8.3.1 ___ Linuxppc-dev mailing list Linuxppc-dev@lists.ozlabs.org https://lists.ozlabs.org/listinfo/linuxppc-dev