Commit 35e57e1b49a351aa804dab6010cd46ae6112a541

Authored by Daniel Gimpelevich
Committed by David S. Miller
1 parent ef40b7ef18

hso: Earlier catch of error condition

There is no need to get an interface specification if we know it's the
wrong one.

Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: David S. Miller <davem@davemloft.net>

Showing 1 changed file with 5 additions and 4 deletions Side-by-side Diff

drivers/net/usb/hso.c
... ... @@ -2886,6 +2886,11 @@
2886 2886 struct hso_shared_int *shared_int;
2887 2887 struct hso_device *tmp_dev = NULL;
2888 2888  
  2889 + if (interface->cur_altsetting->desc.bInterfaceClass != 0xFF) {
  2890 + dev_err(&interface->dev, "Not our interface\n");
  2891 + return -ENODEV;
  2892 + }
  2893 +
2889 2894 if_num = interface->altsetting->desc.bInterfaceNumber;
2890 2895  
2891 2896 /* Get the interface/port specification from either driver_info or from
... ... @@ -2895,10 +2900,6 @@
2895 2900 else
2896 2901 port_spec = hso_get_config_data(interface);
2897 2902  
2898   - if (interface->cur_altsetting->desc.bInterfaceClass != 0xFF) {
2899   - dev_err(&interface->dev, "Not our interface\n");
2900   - return -ENODEV;
2901   - }
2902 2903 /* Check if we need to switch to alt interfaces prior to port
2903 2904 * configuration */
2904 2905 if (interface->num_altsetting > 1)