Re: USB regression in next-20171108 with hub spamming

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> writes:
> Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> writes:
>
>> Felipe Balbi <felipe.balbi@xxxxxxxxxxxxxxx> writes:
>>
>>> Hi,
>>>
>>> Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> writes:
>>>> On Wed, Nov 08, 2017 at 03:05:11PM -0800, Tony Lindgren wrote:
>>>>> Hi Felipe & Greg,
>>>>> 
>>>>> Looks like in next-20171108 USB hub is spamming console about once a
>>>>> second after commit 7dfd74fd128 ("Merge remote-tracking branch
>>>>> 'usb/usb-next'").
>>>>> 
>>>>> Any ideas? See the log below.
>>>>
>>>> Any chance you can run 'git bisect'?
>>>
>>> I wonder if it was caused by the usb_get_std_status() changes. We didn't
>>> catch this in our testing, though. I left the patches in intel's
>>> validation for a few days before sending out.
>>>
>>> Let me compile that very tag and try it with one of our machines.
>>>
>>> Tony, a bisection would be useful, indeed.
>>
>> reproduced. Digging to figure out what's going on.
>
> Okay, found it. Testing a patch.

Here's the patch, I'll send it formally shortly.

diff --git a/drivers/usb/core/message.c b/drivers/usb/core/message.c
index 0cdc463c9509..c15fbf76f8f7 100644
--- a/drivers/usb/core/message.c
+++ b/drivers/usb/core/message.c
@@ -975,6 +975,7 @@ int usb_get_status(struct usb_device *dev, int recip, int type, int target,
 		}
 
 		*(u32 *) data = le32_to_cpu(*(__le32 *) status);
+		ret = 0;
 		break;
 	case 2:
 		if (type != USB_STATUS_TYPE_STANDARD) {
@@ -983,6 +984,7 @@ int usb_get_status(struct usb_device *dev, int recip, int type, int target,
 		}
 
 		*(u16 *) data = le16_to_cpu(*(__le16 *) status);
+		ret = 0;
 		break;
 	default:
 		ret = -EIO;
-- 
2.14.2.642.g20fed7cad4


-- 
balbi

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux