[PATCH] Use of_get_next_child() in k2_sata_proc_info()
Jeff Garzik
jgarzik at pobox.com
Wed Oct 24 16:04:50 EST 2007
Benjamin Herrenschmidt wrote:
> On Wed, 2007-10-24 at 14:25 +1000, Michael Ellerman wrote:
>> k2_sata_proc_info() uses its own hand-rolled loop to check a nodes
>> children for a property, this is not safe WRT refcounting, so fix it
>> to use of_get_next_child().
>>
>> Signed-off-by: Michael Ellerman <michael at ellerman.id.au>
>
> Acked-by: Benjamin Herrenschmidt <benh at kernel.crashing.org>
>
> (Pending you test boot it on one of our G5s first !)
>
>> ---
>> drivers/ata/sata_svw.c | 5 ++++-
>> 1 files changed, 4 insertions(+), 1 deletions(-)
>>
>> diff --git a/drivers/ata/sata_svw.c b/drivers/ata/sata_svw.c
>> index 12d613c..64c3812 100644
>> --- a/drivers/ata/sata_svw.c
>> +++ b/drivers/ata/sata_svw.c
>> @@ -289,7 +289,10 @@ static int k2_sata_proc_info(struct Scsi_Host *shost, char *page, char **start,
>>
>> /* Match it to a port node */
>> index = (ap == ap->host->ports[0]) ? 0 : 1;
>> - for (np = np->child; np != NULL; np = np->sibling) {
>> +
>> + for (np = of_get_next_child(np, NULL);
>> + np != NULL;
>> + np = of_get_next_child(np, np)) {
>> const u32 *reg = of_get_property(np, "reg", NULL);
This sort of thing I would prefer to ACK (ACK!), and let it go upstream
via the powerpc tree.
Jeff
More information about the Linuxppc-dev
mailing list