From: Greg Kroah-Hartman Date: Tue, 31 Dec 2013 05:45:27 +0000 (-0800) Subject: 3.4-stable patches X-Git-Tag: v3.4.76~66 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=4c2351f53343a715ea7557c751330fd86232e5f7;p=thirdparty%2Fkernel%2Fstable-queue.git 3.4-stable patches added patches: usb-cdc-wdm-manage_power-should-always-set-needs_remote_wakeup.patch --- diff --git a/queue-3.4/series b/queue-3.4/series index b0bc7e8905d..36f7fa2c4d5 100644 --- a/queue-3.4/series +++ b/queue-3.4/series @@ -5,3 +5,4 @@ powerpc-kvm-fix-rare-but-potential-deadlock-scene.patch tty-pmac_zilog-check-existence-of-ports-in-pmz_console_init.patch asoc-wm8904-fix-dsp-mode-b-configuration.patch alsa-add-sndrv_pcm_state_paused-case-in-wait_for_avail-function.patch +usb-cdc-wdm-manage_power-should-always-set-needs_remote_wakeup.patch diff --git a/queue-3.4/usb-cdc-wdm-manage_power-should-always-set-needs_remote_wakeup.patch b/queue-3.4/usb-cdc-wdm-manage_power-should-always-set-needs_remote_wakeup.patch new file mode 100644 index 00000000000..68e93eaaba5 --- /dev/null +++ b/queue-3.4/usb-cdc-wdm-manage_power-should-always-set-needs_remote_wakeup.patch @@ -0,0 +1,37 @@ +From 4144bc861ed7934d56f16d2acd808d44af0fcc90 Mon Sep 17 00:00:00 2001 +From: Bjørn Mork +Date: Fri, 29 Nov 2013 20:17:45 +0100 +Subject: usb: cdc-wdm: manage_power should always set needs_remote_wakeup + +From: Bjørn Mork + +commit 4144bc861ed7934d56f16d2acd808d44af0fcc90 upstream. + +Reported-by: Oliver Neukum +Signed-off-by: Bjørn Mork +Acked-by: Oliver Neukum +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/usb/class/cdc-wdm.c | 8 +++----- + 1 file changed, 3 insertions(+), 5 deletions(-) + +--- a/drivers/usb/class/cdc-wdm.c ++++ b/drivers/usb/class/cdc-wdm.c +@@ -822,13 +822,11 @@ static int wdm_manage_power(struct usb_i + { + /* need autopm_get/put here to ensure the usbcore sees the new value */ + int rv = usb_autopm_get_interface(intf); +- if (rv < 0) +- goto err; + + intf->needs_remote_wakeup = on; +- usb_autopm_put_interface(intf); +-err: +- return rv; ++ if (!rv) ++ usb_autopm_put_interface(intf); ++ return 0; + } + + static int wdm_probe(struct usb_interface *intf, const struct usb_device_id *id)