usb: core: bail out if user gives an unknown RefId when using new_id
If users use the new RefId feature of new_id, give them an error message
if they provided an unknown reference. That helps detecting typos.
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
diff --git a/drivers/usb/core/driver.c b/drivers/usb/core/driver.c
index 9b29e5c..620a0ba 100644
--- a/drivers/usb/core/driver.c
+++ b/drivers/usb/core/driver.c
@@ -74,10 +74,13 @@
const struct usb_device_id *id = id_table;
for (; id->match_flags; id++)
- if (id->idVendor == refVendor && id->idProduct == refProduct) {
- dynid->id.driver_info = id->driver_info;
+ if (id->idVendor == refVendor && id->idProduct == refProduct)
break;
- }
+
+ if (id->match_flags)
+ dynid->id.driver_info = id->driver_info;
+ else
+ return -ENODEV;
}
spin_lock(&dynids->lock);