clk: fix parent validation in __clk_set_parent()
authorRajendra Nayak <rnayak@ti.com>
Tue, 3 Jul 2012 06:41:41 +0000 (11:41 +0530)
committerMike Turquette <mturquette@linaro.org>
Tue, 3 Jul 2012 19:05:14 +0000 (12:05 -0700)
commit863b13271f1608ab3af6f7a371047d9a66693e38
tree990c7445eff9b8da1e52eeca07101c13d928c920
parent6887a4131da3adaab011613776d865f4bcfb5678
clk: fix parent validation in __clk_set_parent()

The below commit introduced a bug in __clk_set_parent()
which could cause it to *skip* the parent validation
which makes sure the parent passed to the api is a valid
one.

    commit 7975059db572eb47f0fb272a62afeae272a4b209
    Author: Rajendra Nayak <rnayak@ti.com>
    Date:   Wed Jun 6 14:41:31 2012 +0530

        clk: Allow late cache allocation for clk->parents

This was identified by the following compiler warning..

    drivers/clk/clk.c: In function '__clk_set_parent':
    drivers/clk/clk.c:1083:5: warning: 'i' may be used uninitialized in this function [-Wuninitialized]

.. as reported by Marc Kleine-Budde.

There were various options discussed on how to fix this, one
being initing 'i' to clk->num_parents, but the below approach
was found to be more appropriate as it also makes the 'parent
validation' code simpler to read.

Reported-by: Marc Kleine-Budde <mkl@pengutronix.de>
Signed-off-by: Rajendra Nayak <rnayak@ti.com>
Signed-off-by: Mike Turquette <mturquette@linaro.org>
Cc: stable@kernel.org
drivers/clk/clk.c