Re: [BUG] Regression in v2.6.28 introduced by: 'USB: skip Set-Interface(0) if already in altsetting 0'

From: Jan Scholz
Date: Fri Jan 02 2009 - 07:20:29 EST


Ingo Molnar <mingo@xxxxxxx> writes:

> * Jan Scholz <scholz@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
>> Hi,
>>
>> In v2.6.28 my usb bluetooth device disappears after suspend to ram:
>>
>> $ hcitool dev
>> Devices:
>> hci0 00:0D:93:15:D6:E8
>> $ echo mem > /sys/power/state
>> $ hcitool dev
>> Devices:
>> $
>>
>> The problem does not occur with the (older) hci_usb.ko, but only with
>> btusb.ko.
>>
>> This is the output of lsusb:
>> Bus 001 Device 003: ID 05ac:8203 Apple Computer, Inc. Bluetooth HCI
>>
>> Bisecting finds commit 24c0996 (USB: skip Set-Interface(0) if already in
>> altsetting 0) as the first bad commit, and indeed if I use 2.6.28 with
>> 24c0996 reverted, the bluetooth device survives suspend to ram.
>>
>> If you need more information/test/etc please let me know.
>>
>> Regards,
>> Jan
>>
>> > commit 24c0996a6b73e2554104961afcc8659534503e0d
>> > Author: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
>> > Date: Mon Dec 1 10:24:41 2008 -0500
>> >
>> > USB: skip Set-Interface(0) if already in altsetting 0
>> >
>> > When a driver unbinds from an interface, usbcore always sends a
>> > Set-Interface request to reinstall altsetting 0. Unforunately, quite
>> > a few devices have buggy firmware that crashes when it receives this
>> > request.
>> >
>> > To avoid such problems, this patch (as1180) arranges to send the
>> > Set-Interface request only when the interface is not already in
>> > altsetting 0.
>> >
>> > Signed-off-by: Alan Stern <stern@xxxxxxxxxxxxxxxxxxx>
>> > Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxx>
>
> here's a fix patch that appears to be dealing with aspects of this commit:
>
> http://lkml.org/lkml/2009/1/2/47
>
> you might want to give it a try.
>
> Ingo
>

Hi Ingo,

That patch is actually just 24c099 reverted, and as I wrote in the
previous post it indeed fixes the problem.

Thanks anyway,
Jan
--
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/