• Niklas Cassel's avatar
    regulator: qcom_spmi: Fix warning Bad of_node_put() · fffe7f52
    Niklas Cassel authored
    For of_find_node_by_name(), you typically pass what the previous call
    returned. Therefore, of_find_node_by_name() increases the refcount of
    the returned node, and decreases the refcount of the node passed as the
    first argument.
    
    of_find_node_by_name() is incorrectly used, and produces a warning.
    Fix the warning by using the more suitable function
    of_get_child_by_name().
    
    Also add a missing of_node_put() for the returned value, since this was
    previously being leaked.
    
    OF: ERROR: Bad of_node_put() on /soc/qcom,spmi@400f000/pmic@3/regulators
    CPU: 1 PID: 1 Comm: swapper/0 Tainted: G        W         4.18.0-rc4-00223-gefd7b360b70e #12
    Hardware name: Qualcomm Technologies, Inc. DB820c (DT)
    Call trace:
     dump_backtrace+0x0/0x1a8
     show_stack+0x14/0x20
     dump_stack+0x90/0xb4
     of_node_release+0x74/0x78
     kobject_put+0x90/0x1f0
     of_node_put+0x14/0x20
     of_find_node_by_name+0x80/0xd8
     qcom_spmi_regulator_probe+0x30c/0x508
    
    Fixes: 0caecaa8 ("regulator: qcom_spmi: Add support for SAW")
    Signed-off-by: default avatarNiklas Cassel <niklas.cassel@linaro.org>
    Signed-off-by: default avatarMark Brown <broonie@kernel.org>
    fffe7f52
qcom_spmi-regulator.c 58 KB