• Suraj Jitindar Singh's avatar
    drivers/of: Add check for null property in of_remove_property() · 201b3fe5
    Suraj Jitindar Singh authored
    The validity of the property input argument to of_remove_property() is
    never checked within the function and thus it is possible to pass a null
    value. It happens that this will be picked up in __of_remove_property()
    as no matching property of the device node will be found and thus an
    error will be returned, however once again there is no explicit check
    for a null value. By the time this is detected 2 locks have already been
    acquired which is completely unnecessary if the property to remove is
    null.
    
    Add an explicit check in the function of_remove_property() for a null
    property value and return -ENODEV in this case, this is consistent with
    what the previous return value would have been when the null value was
    not detected and passed to __of_remove_property().
    
    By moving an explicit check for the property paramenter into the
    of_remove_property() function, this will remove the need to perform this
    check in calling code before invocation of the of_remove_property()
    function.
    Signed-off-by: default avatarSuraj Jitindar Singh <sjitindarsingh@gmail.com>
    Acked-by: default avatarRob Herring <robh@kernel.org>
    Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
    201b3fe5
base.c 62.2 KB