>
>On Fri, Aug 12, 2016 at 09:34:41AM +0800, Peter Chen wrote:
>> of_node_put needs to be called when the device node which is got from
>> of_parse_phandle has finished using.
>>
>> Cc: Minghuan Lian <minghuan.l...@freescale.com>
>> Cc: Mingkai Hu <mingkai...@freescale.com>
>> Cc: Roy Zang <tie-fei.z...@freescale.com>
>> Signed-off-by: Peter Chen <peter.c...@nxp.com>
>> ---
>>  drivers/pci/host/pci-layerscape.c | 2 ++
>>  1 file changed, 2 insertions(+)
>>
>> diff --git a/drivers/pci/host/pci-layerscape.c
>> b/drivers/pci/host/pci-layerscape.c
>> index 114ba81..573b996 100644
>> --- a/drivers/pci/host/pci-layerscape.c
>> +++ b/drivers/pci/host/pci-layerscape.c
>> @@ -173,6 +173,8 @@ static int ls_pcie_msi_host_init(struct pcie_port *pp,
>>              return -EINVAL;
>>      }
>>
>> +    of_node_put(msi_node);
>> +
>
>Can you please look for and fix similar errors in other drivers in 
>drivers/pci/host/*?
>
>For example:
>
>  advk_pcie_probe() and iproc_pcie_msi_enable() call
>  of_parse_phandle() but don't call of_node_put() in failure paths.
>
>  dra7xx_pcie_init_irq_domain(), nwl_pcie_init_irq_domain(), and
>  xilinx_pcie_init_irq_domain() call of_get_next_child() but don't
>  call of_node_put() in failure paths.
>
>  ks_pcie_get_irq_controller_info() calls of_find_node_by_name().
>

Would you agree that I fix the issues for drivers that call of_parse_phandle or 
of_get_next_child
or of_find_node_by_name? I can grep the symbols, and check if of_node_put is 
called properly.
I will group all fixed within one patch set.

>I think there may be others, e.g., the pci_host_bridge_msi_domain() path calls
>of_parse_phandle(), but I'm not sure of_node_put() is called on failure paths.
>

I find pci_host_bridge_msi_domain does not call of_parse_phandle directly, only 
of_msi_get_domain calls of_parse_phandle, and
of_node_put is called properly.

Peter


>When we find bugs like this, it's nice to fix one occurrence, but it's really 
>great if we
>can squash similar bugs nearby so the bug isn't copied into new drivers.
>
>>      return 0;
>>  }
>>
>> --
>> 1.9.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-pci"
>> in the body of a message to majord...@vger.kernel.org More majordomo
>> info at  http://vger.kernel.org/majordomo-info.html

Reply via email to