• Guenter Roeck's avatar
    hwmon: (pmbus) Don't return errors from driver remove functions · 866cf12a
    Guenter Roeck authored
    Driver remove functions have an error return value, but rarely return an error
    in practice. If a driver does return an error from its remove function, the
    driver won't be unloaded and is expected to stay alive.
    
    pmbus_do_remove() is defined as returning an int, but always returns 0 (no
    error). Calling code passes that return value on to high level driver
    remove functions, but does not evaluate it and removes driver data even if
    pmbus_do_remove() returned an error (which it in practice never does). Even if
    this code could never cause a real problem, it is nevertheless conceptually
    wrong.
    
    To reduce confusion and simplify the code, change pmbus_do_remove() to be a void
    function, and have PMBus client drivers always return zero in their driver
    remove functions.
    Reported-by: default avatarJean Delvare <khali@linux-fr.org>
    Signed-off-by: default avatarGuenter Roeck <guenter.roeck@ericsson.com>
    Acked-by: default avatarJean Delvare <khali@linux-fr.org>
    866cf12a
ucd9200.c 5.49 KB