Re: [PATCH] of/selftest: clean-up of_selftest_platform_populate pass/fail handling

From: Grant Likely
Date: Wed May 14 2014 - 07:10:15 EST


On Tue, 13 May 2014 11:18:28 -0500, Rob Herring <robherring2@xxxxxxxxx> wrote:
> From: Rob Herring <robh@xxxxxxxxxx>
>
> Move the pass/fail checks into selftest() calls instead of a separate if
> condition. Unconditionally calling pass was wrong.
>
> Signed-off-by: Rob Herring <robh@xxxxxxxxxx>
> Cc: Grant Likely <grant.likely@xxxxxxxxxx>

Acked-by: Grant Likely <grant.likely@xxxxxxxxxx>

> ---
> drivers/of/selftest.c | 14 +++++---------
> 1 file changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/of/selftest.c b/drivers/of/selftest.c
> index fe70b86..c1d7d38 100644
> --- a/drivers/of/selftest.c
> +++ b/drivers/of/selftest.c
> @@ -440,22 +440,18 @@ static void __init of_selftest_platform_populate(void)
> /* Test that a missing irq domain returns -EPROBE_DEFER */
> np = of_find_node_by_path("/testcase-data/testcase-device1");
> pdev = of_find_device_by_node(np);
> - if (!pdev)
> - selftest(0, "device 1 creation failed\n");
> + selftest(pdev, "device 1 creation failed\n");
> +
> irq = platform_get_irq(pdev, 0);
> - if (irq != -EPROBE_DEFER)
> - selftest(0, "device deferred probe failed - %d\n", irq);
> + selftest(irq == -EPROBE_DEFER, "device deferred probe failed - %d\n", irq);
>
> /* Test that a parsing failure does not return -EPROBE_DEFER */
> np = of_find_node_by_path("/testcase-data/testcase-device2");
> pdev = of_find_device_by_node(np);
> - if (!pdev)
> - selftest(0, "device 2 creation failed\n");
> + selftest(pdev, "device 2 creation failed\n");
> irq = platform_get_irq(pdev, 0);
> - if (irq >= 0 || irq == -EPROBE_DEFER)
> - selftest(0, "device parsing error failed - %d\n", irq);
> + selftest(irq < 0 && irq != -EPROBE_DEFER, "device parsing error failed - %d\n", irq);
>
> - selftest(1, "passed");
> }
>
> static int __init of_selftest(void)
> --
> 1.9.1
>

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/