]> Git Repo - linux.git/commit
of: introduce for_each_matching_node_and_match()
authorStephen Warren <[email protected]>
Tue, 20 Nov 2012 23:12:20 +0000 (16:12 -0700)
committerRob Herring <[email protected]>
Wed, 21 Nov 2012 04:58:55 +0000 (22:58 -0600)
commit50c8af4cf98fd97d6779f244215154e4c89699c7
tree9690d810d1eef4b5dc8a26824dc699bbb4d54f44
parentbe193249b4178158c0f697cb452b2bbf0cb16361
of: introduce for_each_matching_node_and_match()

The following pattern of code is tempting:

    for_each_matching_node(np, table) {
        match = of_match_node(table, np);

However, this results in iterating over table twice; the second time
inside of_match_node(). The implementation of for_each_matching_node()
already found the match, so this is redundant. Invent new function
of_find_matching_node_and_match() and macro
for_each_matching_node_and_match() to remove the double iteration,
thus transforming the above code to:

    for_each_matching_node_and_match(np, table, &match)

Signed-off-by: Stephen Warren <[email protected]>
Signed-off-by: Rob Herring <[email protected]>
drivers/of/base.c
include/linux/of.h
This page took 0.056908 seconds and 4 git commands to generate.