866cf12a0e
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: Jean Delvare <khali@linux-fr.org> Signed-off-by: Guenter Roeck <guenter.roeck@ericsson.com> Acked-by: Jean Delvare <khali@linux-fr.org> |
||
---|---|---|
.. | ||
adm1275.c | ||
Kconfig | ||
lm25066.c | ||
Makefile | ||
max8688.c | ||
max16064.c | ||
max34440.c | ||
pmbus_core.c | ||
pmbus.c | ||
pmbus.h | ||
ucd9000.c | ||
ucd9200.c |