On Sun, Mar 06, 2022 at 08:59:33PM +0100, Anton Lindqvist wrote:
> On Sun, Mar 06, 2022 at 07:34:37PM +0100, Caspar Schutijser wrote:
> > Hi,
> > 
> > I have a problem (described below) that is absent on a kernel that I
> > compiled myself. Is there some (USB) audio diff in snapshots that
> > could cause this? Otherwise, there may be something wrong with my
> > testing.
> 
> No related diff(s) in snapshots that I'm aware of.

Alright, thanks. In the meanwhile, I (fortunately) have been able to
reproduce the problems with a kernel that I compiled myself. Not sure
what I was doing wrong earlier.

> > The problem starts when I press the volume-up or volume-down button on
> > my uaudio(4) headset (once or a couple of times). These are the
> > symptoms:
> >  * When watching systat -s 1, ehci0 shows 50 interrupts per second
> > (that's still normal). When I press one of the physical volume buttons
> > on the headset [a couple of times], it jumps to +/- 480 interrupts
> > per second.
> >  * xterm behaves normally (it processes my keystrokes as usual) but
> > providing keyboard or mouse input to Firefox becomes problematic;
> > it takes a very long time before they are processed by Firefox.
> >  * In the mpv program, pressing the volume-down button on my headset
> > causes the volume to go down to 0, as if the button was pressed
> > continiously. And the volume goes up to 130 when I press the volume-up
> > button. When I press the 'Alt' key, mpv logs the following to the
> > console repeatedly:
> >     [input] No key binding found for key 'Alt+VOLUME_DOWN'.
> > 
> > From the last point, it appears that somehow once I press the
> > volume-down button, it appears to the computer that the button is
> > pressed continiously (which is not the case).
> > 
> > Those problems (the high number of interrupts, the "key pressing")
> > go away immediately if I unplug the USB dongle that connects my
> > headset to this machine. And if I plug it back in again,
> > the problems stay away until I press the volume buttons again.
> > 
> > Also, those problems do not appear on a Linux box that I used to test
> > (to rule out issues with the headset itself).
> 
> Could you try reverting the following diff and report back if the
> interrupt storm still happens after pressing the volume keys.

I reverted the diff and ran with that on two machines. On both machines,
I have not seen the interrupt storm even though I really tried to make
it happen again. So reverting that diff seems to work.

> Also, could you extract the raw HID report for your headset using the
> following command:
> 
>       # usbhidctl -R -f /dev/uhid0

Of course! Here is the output:

0x05 0x0b 0x09 0x05 0xa1 0x01 0x85 0x03 0x05 0x0b 0x15 0x00 0x25 0x01 0x09 0x20 
0x75 0x01 0x95 0x01 0x81 0x22 0x09 0x21 0x09 0x24 0x09 0x2f 0x09 0x26 0x75 0x01 
0x95 0x04 0x81 0x06 0x09 0x07 0x05 0x09 0x09 0x01 0x75 0x01 0x95 0x01 0x81 0x40 
0x05 0x0b 0x75 0x01 0x95 0x02 0x81 0x01 0x09 0x9e 0x75 0x01 0x95 0x01 0x91 0x22 
0x05 0x08 0x09 0x17 0x09 0x21 0x09 0x18 0x09 0x09 0x09 0x2a 0x09 0x20 0x75 0x01 
0x95 0x06 0x91 0x22 0x75 0x01 0x95 0x01 0x91 0x01 0xc0 0x05 0x0c 0x09 0x01 0xa1 
0x01 0x85 0x04 0x15 0x00 0x25 0x01 0x75 0x01 0x09 0xcd 0x09 0xb1 0x09 0xb0 0x09 
0xb7 0x09 0xb5 0x09 0xb6 0x09 0xb3 0x09 0xb4 0x95 0x08 0x81 0x06 0x85 0x05 0x09 
0xe9 0x09 0xea 0x95 0x02 0x81 0x02 0x95 0x06 0x81 0x01 0xc0 0x06 0xff 0xff 0x09 
0x01 0xa1 0x01 0x85 0x01 0x09 0x01 0x15 0x00 0x26 0xff 0x00 0x75 0x08 0x95 0x6a 
0x81 0x02 0x09 0x02 0x15 0x00 0x26 0xff 0x00 0x75 0x08 0x95 0x6a 0x91 0x02 0x85 
0x02 0x06 0x13 0xff 0x15 0x00 0x25 0x01 0x09 0x20 0x75 0x01 0x95 0x01 0x81 0x22 
0x09 0x21 0x09 0x24 0x09 0x2f 0x09 0x26 0x75 0x01 0x95 0x04 0x81 0x06 0x09 0x07 
0x05 0x09 0x09 0x01 0x75 0x01 0x95 0x01 0x81 0x40 0x06 0x13 0xff 0x75 0x01 0x95 
0x02 0x81 0x01 0x09 0x9e 0x75 0x01 0x95 0x01 0x91 0x22 0x06 0x95 0xff 0x09 0x17 
0x09 0x21 0x09 0x18 0x09 0x09 0x09 0x2a 0x09 0x20 0x09 0x03 0x75 0x01 0x95 0x07 
0x91 0x22 0xc0 0x06 0x99 0xff 0x09 0x02 0xa1 0x01 0x09 0x03 0x85 0x9a 0x15 0x00 
0x26 0xff 0x00 0x75 0x08 0x95 0x1f 0xb1 0x02 0x85 0x9b 0x09 0x04 0x15 0x00 0x25 
0x01 0x95 0x01 0x75 0x01 0x81 0x06 0x95 0x01 0x75 0x07 0x81 0x01 0xc0

Thanks a lot,
Caspar

Reply via email to