diff --git a/drivers/base/dd.c b/drivers/base/dd.c index 10063d8a1b7d..1abd39ed3f9f 100644 --- a/drivers/base/dd.c +++ b/drivers/base/dd.c @@ -1068,8 +1068,12 @@ static int __driver_attach(struct device *dev, void *data) */ return 0; } else if (ret < 0) { - dev_dbg(dev, "Bus failed to match device: %d", ret); - return ret; + dev_dbg(dev, "Bus failed to match device: %d\n", ret); + /* + * Driver could not match with device, but may match with + * another device on the bus. + */ + return 0; } /* ret > 0 means positive match */ if (driver_allows_async_probing(drv)) {