Re: [PATCH 3.12 000/197] 3.12.31-stable review

From: I. Schrey
Date: Sat Oct 18 2014 - 07:44:28 EST


Jiri Slaby wrote:
This is the start of the stable review cycle for the 3.12.31 release.
There are 197 patches in this series, all will be posted as a response
to this one. If anyone has any issues with these being applied, please
let me know.

Hi Jiri,

the commit mentioned below has already been backported to 3.10 stable,
can you please add it to 3.12 stable?

A test build with patch-3.12.31-rc1 and the commit in question
builds and runs fine for me.

Thank you in advance.

Regards
Ingmar

-------- Forwarded message --------
Subject: linux-stable: backport usb related commit to 3.10 and 3.12?
Date: Sat, 23 Aug 2014 13:19:09 +0200
To:
linux-kernel@xxxxxxxxxxxxxxx



Greetings.

On an administered server, I noticed that there's a constant load
around 0.70 when running kernels 3.10 and 3.12, even if
the system is doing nothing, and in single user mode.
Culprit seems to be the process 'khubd'.
No such effect when running kernels 3.4 or 3.14.

I reverse bisected linux-stable and found that the following commit
fixes it for me, for both kernel 3.10 and 3.12:

[08d1dec6f4054e3613f32051d9b149d4203ce0d2] usb:hub set hub->change_bits when over-current happens


Could that commit be backported to the stable 3.10 and 3.12 series?

(Disclaimer: I'm not a programmer, but I'd be happy to help with any testing involved)

Regards
Ingmar

--------------------------------------------------------------------------

$ git diff ac5166bcdb43889a5bd837f5076b78049e1f8bca 08d1dec6f4054e3613f32051d9b149d4203ce0d2
diff --git a/drivers/usb/core/hub.c b/drivers/usb/core/hub.c
index c1422a0..babba88 100644
--- a/drivers/usb/core/hub.c
+++ b/drivers/usb/core/hub.c
@@ -1147,7 +1147,8 @@ static void hub_activate(struct usb_hub *hub, enum
hub_activation_type type)
/* Tell khubd to disconnect the device or
* check for a new connection
*/
- if (udev || (portstatus & USB_PORT_STAT_CONNECTION))
+ if (udev || (portstatus & USB_PORT_STAT_CONNECTION) ||
+ (portstatus & USB_PORT_STAT_OVERCURRENT))
set_bit(port1, hub->change_bits);

} else if (portstatus & USB_PORT_STAT_ENABLE) {


--

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/