From: Bjørn Mork Date: Mon, 21 Jan 2013 05:50:40 +0000 (+0000) Subject: net: cdc_ncm: fix error path for single interface probing X-Git-Tag: v3.8-rc6~20^2~29^2 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=6b4ef60299e30daa8643218fde6152d8a01e2d4b;p=~emulex%2Finfiniband.git net: cdc_ncm: fix error path for single interface probing commit bbc8d92 (net: cdc_ncm: add Huawei devices) implemented support for devices with a single combined control and data interface. Fix up the error path so that we do not double release such interfaces in case of probing failures. Signed-off-by: Bjørn Mork Signed-off-by: David S. Miller --- diff --git a/drivers/net/usb/cdc_ncm.c b/drivers/net/usb/cdc_ncm.c index 4041159f6c9..2c4b41ffddb 100644 --- a/drivers/net/usb/cdc_ncm.c +++ b/drivers/net/usb/cdc_ncm.c @@ -524,7 +524,8 @@ advance: error2: usb_set_intfdata(ctx->control, NULL); usb_set_intfdata(ctx->data, NULL); - usb_driver_release_interface(driver, ctx->data); + if (ctx->data != ctx->control) + usb_driver_release_interface(driver, ctx->data); error: cdc_ncm_free((struct cdc_ncm_ctx *)dev->data[0]); dev->data[0] = 0;