summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJohan Hovold <jhovold@gmail.com>2013-08-13 13:27:35 +0200
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-04-14 06:44:27 -0700
commit26693c1730687729f2ba5b849442382688aa7cec (patch)
tree3cb320cf5e2bd6e3d5f1b4c2eb384b3b69c460bf
parentb51317e897a02c617b4ea446e62cbb807924fbdd (diff)
USB: keyspan: fix null-deref at disconnect and release
commit ff8a43c10f1440f07a5faca0c1556921259f7f76 upstream. Make sure to fail properly if the device is not accepted during attach in order to avoid null-pointer derefs (of missing interface private data) at disconnect or release. Signed-off-by: Johan Hovold <jhovold@gmail.com> Signed-off-by: Ben Hutchings <ben@decadent.org.uk> Cc: Yang Yingliang <yangyingliang@huawei.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/usb/serial/keyspan.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/usb/serial/keyspan.c b/drivers/usb/serial/keyspan.c
index 253bff67db0e..66d806ee9f3e 100644
--- a/drivers/usb/serial/keyspan.c
+++ b/drivers/usb/serial/keyspan.c
@@ -2486,7 +2486,7 @@ static int keyspan_startup(struct usb_serial *serial)
if (d_details == NULL) {
dev_err(&serial->dev->dev, "%s - unknown product id %x\n",
__func__, le16_to_cpu(serial->dev->descriptor.idProduct));
- return 1;
+ return -ENODEV;
}
/* Setup private data for serial driver */