diff options
author | Isaac J. Manjarres <[email protected]> | 2022-09-20 17:14:13 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <[email protected]> | 2022-11-10 18:36:04 +0100 |
commit | 27c0d217340e47ec995557f61423ef415afba987 (patch) | |
tree | e738ff2a297a0f4123309e57899ecd0130dac27b /lib/mpi/mpi-mod.c | |
parent | 730600223b64918324ab322ab174361bd41073c0 (diff) |
driver core: Fix bus_type.match() error handling in __driver_attach()
When a driver registers with a bus, it will attempt to match with every
device on the bus through the __driver_attach() function. Currently, if
the bus_type.match() function encounters an error that is not
-EPROBE_DEFER, __driver_attach() will return a negative error code, which
causes the driver registration logic to stop trying to match with the
remaining devices on the bus.
This behavior is not correct; a failure while matching a driver to a
device does not mean that the driver won't be able to match and bind
with other devices on the bus. Update the logic in __driver_attach()
to reflect this.
Fixes: 656b8035b0ee ("ARM: 8524/1: driver cohandle -EPROBE_DEFER from bus_type.match()")
Cc: [email protected]
Cc: Saravana Kannan <[email protected]>
Signed-off-by: Isaac J. Manjarres <[email protected]>
Link: https://lore.kernel.org/r/[email protected]
Signed-off-by: Greg Kroah-Hartman <[email protected]>
Diffstat (limited to 'lib/mpi/mpi-mod.c')
0 files changed, 0 insertions, 0 deletions