Ubuntu

046d:c52b USB3 port Logitech mouse using unifying receiver not detected

Reported by Rainer Rohde on 2012-08-20
248
This bug affects 61 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Medium
Unassigned

Bug Description

When starting up my laptop (Asus G75), my Logitech mouse w/ unifying receiver is not always detected, and I have to unplug it multiple times before it's found. This happend on my Dell XPS 15z as well, and it does pertain to USB3. My MacBook Pro never had that issue -- it only had USB2 ports.

WORKAROUND: Run https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143/comments/55 as root and it will unload and reload the module until the mouse works.

ProblemType: Bug
DistroRelease: Ubuntu 12.10
Package: linux-image-3.5.0-11-generic 3.5.0-11.11
ProcVersionSignature: Ubuntu 3.5.0-11.11-generic 3.5.2
Uname: Linux 3.5.0-11-generic x86_64
NonfreeKernelModules: nvidia
ApportVersion: 2.4-0ubuntu8
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC1: rrohde 2109 F.... pulseaudio
 /dev/snd/controlC0: rrohde 2109 F.... pulseaudio
Date: Mon Aug 20 12:47:21 2012
EcryptfsInUse: Yes
MachineType: ASUSTeK COMPUTER INC. G75VW
ProcEnviron:
 TERM=xterm
 PATH=(custom, no user)
 LANG=en_US.UTF-8
 SHELL=/bin/bash
ProcFB: 0 EFI VGA
ProcKernelCmdLine: BOOT_IMAGE=/boot/vmlinuz-3.5.0-11-generic root=UUID=f3ba964c-10c0-441b-9917-2b07cbc460ea ro elevator=noop quiet acpi=irq splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.5.0-11-generic N/A
 linux-backports-modules-3.5.0-11-generic N/A
 linux-firmware 1.89
SourcePackage: linux
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 06/15/2012
dmi.bios.vendor: American Megatrends Inc.
dmi.bios.version: G75VW.210
dmi.board.asset.tag: ATN12345678901234567
dmi.board.name: G75VW
dmi.board.vendor: ASUSTeK COMPUTER INC.
dmi.board.version: 1.0
dmi.chassis.asset.tag: No Asset Tag
dmi.chassis.type: 10
dmi.chassis.vendor: ASUSTeK COMPUTER INC.
dmi.chassis.version: 1.0
dmi.modalias: dmi:bvnAmericanMegatrendsInc.:bvrG75VW.210:bd06/15/2012:svnASUSTeKCOMPUTERINC.:pnG75VW:pvr1.0:rvnASUSTeKCOMPUTERINC.:rnG75VW:rvr1.0:cvnASUSTeKCOMPUTERINC.:ct10:cvr1.0:
dmi.product.name: G75VW
dmi.product.version: 1.0
dmi.sys.vendor: ASUSTeK COMPUTER INC.

Rainer Rohde (rainer-rohde) wrote :
Brad Figg (brad-figg) on 2012-08-20
Changed in linux (Ubuntu):
status: New → Confirmed
Joseph Salisbury (jsalisbury) wrote :

Do you happen to know if this issue happened in prior releases?

Would it be possible for you to test the latest upstream kernel? Refer to https://wiki.ubuntu.com/KernelMainlineBuilds . Please test the latest v3.6 kernel[0] (Not a kernel in the daily directory) and install both the linux-image and linux-image-extra .deb packages.

Once you've tested the upstream kernel, please remove the 'needs-upstream-testing' tag. Please only remove that one tag and leave the other tags. This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the 'needs-upstream-testing' text.

If this bug is fixed in the mainline kernel, please add the following tag 'kernel-fixed-upstream'.

If the mainline kernel does not fix this bug, please add the tag: 'kernel-bug-exists-upstream'.

If you are unable to test the mainline kernel, for example it will not boot, please add the tag: 'kernel-unable-to-test-upstream'.
Once testing of the upstream kernel is complete, please mark this bug as "Confirmed".

Thanks in advance.

[0] http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.6-rc2-quantal/

Changed in linux (Ubuntu):
importance: Undecided → Medium
status: Confirmed → Incomplete
tags: added: needs-upstream-testing

Rainer Rohde, thank you for reporting this and helping make Ubuntu better.

Let us avoid marking this a duplicate of bug 1028806 and commenting on that report for now, despite same mouse vendor ID, due to different hardware it is being plugged into, and differing outcomes.

Hence, could you please test the latest upstream kernel available following https://wiki.ubuntu.com/KernelMainlineBuilds ? It will allow additional upstream developers to examine the issue. Please do not test the kernel in the daily folder, but the one all the way at the bottom. Once you've tested the upstream kernel, please comment on which kernel version specifically you tested and remove the tag:
needs-upstream-testing

This can be done by clicking on the yellow pencil icon next to the tag located at the bottom of the bug description and deleting the text:
needs-upstream-testing

If this bug is fixed in the mainline kernel, please add the following tags:
kernel-fixed-upstream
kernel-fixed-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested.

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested.

If you are unable to test the mainline kernel, please comment as to why specifically you were unable to test it and add the following tags:
kernel-unable-to-test-upstream
kernel-unable-to-test-upstream-VERSION-NUMBER

where VERSION-NUMBER is the version number of the kernel you tested.

Please let us know your results. Thank you for your understanding.

summary: - USB3 port -- Logitech mouse using unifying receiver not always detected
+ 046d:c52b USB3 port Logitech mouse using unifying receiver not always
+ detected
Rainer Rohde (rainer-rohde) wrote :

How funny. I was commenting on the wrong bug all along. Everything I said in 1028806 should have gone here. :)

I am downloading that kernel now. I'll let you know asap.

Rainer Rohde (rainer-rohde) wrote :

uname -a:

Linux rrohde-G75VW 3.6.0-030600rc5-generic #201209082035 SMP Sun Sep 9 00:36:02 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

This kernel still has the same issue -- my Trackball was not recognized initially.

tags: added: kernel-bug-exists-upstream kernel-bug-exists-upstream-3.6.0-030600rc5-generic
removed: needs-upstream-testing

Rainer Rohde, thank you for testing the mainline kernel.

Did this problem not occur in a version of Ubuntu prior to Quantal, using your laptop (Asus G75)?

Rainer Rohde (rainer-rohde) wrote :

I noticed that this is strictly a USB3 issue. I had a MacBook Pro (USB2 only), and this particular Logitech Trackman with Unifying Receiver worked just perfectly on 12.04 and early builds of Quantal.

Then I moved to a Dell XPS (USB3 only) and it started to fail.

Then I moved to my current ASUS G75 (USB3 only) and both 12.04 (that I fell back to for other reasons) and now again Quantal, all the way up to beta1, have issues with recognizing the Logitech device.

As a side note, an older, WIRED Logitech Trackman of mine works perfectly fine on USB3, regardless of 12.04 or Quantal.

From what I can tell this issues is really with USB3 and the Logitech Unifying Receiver.

tags: added: precise

Rainer Rohde, could you please boot into the newest mainline kernel, and gather a USB trace for a more in depth analysis following http://www.kernel.org/doc/Documentation/usb/usbmon.txt ?

Thank you for your understanding.

Rainer Rohde (rainer-rohde) wrote :

Didn't have the time today to mess with new kernels, so I did it from my current kernel:

uname -a
Linux rrohde-G75VW 3.5.0-14-generic #16-Ubuntu SMP Mon Sep 10 21:57:14 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

The funny thing is, when I first boot up, the Unifying Receiver is NOT yet found inside /proc/bus/input/devices, even though it should.

On the first unplugging attempt, it shows up, but it does not always WORK after the first attempt when plugging it back in. Again, most times it takes 2-8 attempts, more recently I had to do it up to 20 or more times before the mouse pointer moved.

However, during this testing (I did it twice), the mouse worked after unplugging the Unifying Receive only once. Please find attached the requested outfile.

Rainer Rohde (rainer-rohde) wrote :

Not sure if that's helpful at all, but I found this line while booting into recovery mode:

[3.152925] logitech-djreceiver 0003: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32

Rainer Rohde (rainer-rohde) wrote :

Not sure if this article helps...

http://lwn.net/Articles/458418/

Rainer Rohde (rainer-rohde) wrote :

Any progress being made? This issue still persists and we're a month away from Quantal release...

Rainer Rohde, still missing action item from https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143/comments/8 . Not much one may do wtihout it.

Rainer Rohde (rainer-rohde) wrote :

Ok, here we go:

root@rrohde-G75VW:~# uname -a
Linux rrohde-G75VW 3.6.0-999-generic #201209200436 SMP Thu Sep 20 08:37:14 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux

Please see attached outfile.

Note that I stopped recording to the file as soon as my Logitech Unifying receiver was detected and the mouse pointer moved.

tags: added: kernel-bug-exists-upstream-3.6.0-999-generic
removed: kernel-bug-exists-upstream-3.6.0-030600rc5-generic
tags: added: kernel-bug-exists-upstream-3.6.0-030600rc5-generic

Rainer Rohde, thank you for providing the trace with the latest mainline kernel available.

Could you please regression test for this in Lucid via http://cdimage.ubuntu.com/releases/10.04.4/release/ ?

Rainer Rohde (rainer-rohde) wrote :

You want me to install 10.04 on my laptop? Will this work from within a VM instead?

1 comments hidden view all 119 comments

Rainer Rohde, a test of 10.04 via Live or installed environment is fine.

A VM will not be an appropriate testing environment.

Rainer Rohde (rainer-rohde) wrote :

Christopher,

I burnt a 10.04 LiveCD and the Logitech Unifying Receiver *works perfectly* each and every time I rebooted into the 10.04 live environment.

On the contrary, when I rebooted back into 12.10 beta, I had to unplug the Unifying Receiver 14(!) times before the mouse responded.

While in the 10.04 live environment, I recorded this tidbit from dmesg:

ubuntu@ubuntu:~$ dmesg | grep -i [l]ogitech
[ 83.073503] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.0/input/input8
[ 83.073655] generic-usb 0003:046D:C52B.0001: input,hidraw0: USB HID v1.11 Keyboard [Logitech USB Receiver] on usb-0000:00:14.0-4/input0
[ 83.075346] input: Logitech USB Receiver as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.1/input/input9
[ 83.075418] generic-usb 0003:046D:C52B.0002: input,hiddev96,hidraw1: USB HID v1.11 Mouse [Logitech USB Receiver] on usb-0000:00:14.0-4/input1
[ 83.077209] generic-usb 0003:046D:C52B.0003: hiddev97,hidraw2: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input

So, what's next since we now know that 10.04 didn't have that issue?

Also, the bug displayed here https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1028806.

Rainer Rohde (rainer-rohde) wrote :

In comparison, while in 12.10, dmesg presents this:

logitech-djreceiver 0003:046D:C52B.0030: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32

tags: added: regression-release
Rainer Rohde (rainer-rohde) wrote :

As a non-developer, but rather a Ubuntu power-user, I think I am unable to do this bisect by myself. I had encountered a bug in the past that required a bisect as well, and the person who was subscribed to that bug did provide the kernel builds I needed to test. This was a rather long process and I was glad I was able to help here, but I was happy I wasn't doing this all alone.

In fact, this should not be left to the end-user to begin with.

Rainer Rohde, thank you for quickly responding to my request. Regarding your comments https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143/comments/22 :
>"As a non-developer, but rather a Ubuntu power-user, I think I am unable to do this bisect by myself. I had encountered a bug in the past that required a bisect as well, and the person who was subscribed to that bug did provide the kernel builds I needed to test. This was a rather long process and I was glad I was able to help here, but I was happy I wasn't doing this all alone."

As a fellow non-developer, power-user, bisecting can, at first, seem daunting. However, since you can install and boot into different kernels, you certainly have skill, having done maneuvers of the bisection process already.

Before one does the commit bisection, which tends to be the most challenging, one has narrow down the kernel versions to a particular release (ex. Lucid). As we have a wide range from Lucid to Precise, one could do the pre-commit bisection following https://wiki.ubuntu.com/Kernel/KernelBisection#Before_Starting_to_Commit_Bisect_Your_Kernel_Regression . Is this something you could try?

If you feel up to trying it anyways with help from the Ubuntu Community, you are welcome to do this via support from the Ubuntu Kernel Team https://wiki.ubuntu.com/KernelTeam#Communications .

>"In fact, this should not be left to the end-user to begin with."

The above mentioned request was never left to an end-user. You were only asked if you could try to do it, not required to, in order to speed up the time it takes to get the bug fixed. If you cannot, then one will have to wait.

Joseph Salisbury (jsalisbury) wrote :

Hi Rainer,

I can assist you with the bisect. We first need to identify the last good kernel and first bad kernel. It looks like the bug does not exist in 10.04, but it is in the latest mainline kernel. Can you test the following kernels and report back the first kernel that has the bug:

v3.0 final: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.0-oneiric/
v3.1 final: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.1-oneiric/
v3.2 final: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.2-precise/

You don't have to test every kernel, just up until the kernel that first has this bug.

Thanks in advance!

tags: added: performing-bisect
Rainer Rohde (rainer-rohde) wrote :

Joseph / Christopher -- here are the initial results:

linux-image-3.0.0-0300-generic <<< did not even install right and created kernel panic.

linux-image-3.1.0-030100-generic <<< does NOT have the bug. I restarted my laptop 3x with this kernel, and the Logitech Unifying Receiver worked every time

linux-image-3.2.0-030200-generic #201201042035 <<< HAS the bug. I restarted my laptop 3x with this kernel, and the Logitech Unifying Receive did not work.

Thanks.

Rainer Rohde (rainer-rohde) wrote :

Robert -- maybe you could mark this bug as affecting you as well -- so I don't feel so alone. :)

Joseph Salisbury (jsalisbury) wrote :

Thanks for testing, Rainer. Now that we know the bug exists in v3.2, we need to find out what release candidate introduced the bug. Can you test the following kernels as well:

v3.2-rc1: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.2-rc1-oneiric/
v3.2-rc4: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.2-rc4-precise/

Rainer Rohde (rainer-rohde) wrote :

Here are my findings:

3.2.0-030200rc1-generic #201111071935 SMP Tue Nov 8 00:37:52 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux <<< HAS the bug 3 out of 4 reboots

3.2.0-030200rc4-generic #201112081439 SMP Thu Dec 8 19:41:07 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux <<< HAS the bug 4 out of 4 reboots

Rainer Rohde (rainer-rohde) wrote :

So, what's next?

Joseph Salisbury (jsalisbury) wrote :

It seems the bug exists in v3.2-rc1, so we will have to test earlier kernels to find when it was introduced. Can you test some of the v3.1 release candidates:

v3.1-rc2: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.1-rc2-oneiric/
v3.1-rc3: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.1-rc3-oneiric/
v3.1-rc4: http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.1-rc4-oneiric/

...

Again, you don't have to test every kernel, just up until the kernel that first has this bug.

Rainer Rohde (rainer-rohde) wrote :

Here are the results -- all kernels worked flawlessly:

uname -a
Linux rrohde-G75VW 3.1.0-0301rc2-generic #201108150905 SMP Mon Aug 15 09:12:41 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux <<< does NOT have the bug. Unifying Receiver works 3 out of 3 boots.

uname -a
Linux rrohde-G75VW 3.1.0-0301rc3-generic #201108231005 SMP Tue Aug 23 10:10:55 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux <<< does NOT have the bug. Unifying Receiver works 3 out of 3 boots.

uname -a
Linux rrohde-G75VW 3.1.0-0301rc4-generic #201108290905 SMP Mon Aug 29 09:11:07 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux <<< does NOT have the bug. Unifying Receiver works 3 out of 3 boots.

Rainer Rohde (rainer-rohde) wrote :

Here are the results:

uname -a
Linux rrohde-G75VW 3.1.0-030100-generic #201110241006 SMP Mon Oct 24 14:07:10 UTC 2011 x86_64 x86_64 x86_64 GNU/Linux <<< does NOT have the bug, 3 out of 3 reboots.

Joseph Salisbury (jsalisbury) wrote :

Thanks for testing, Rainer. I will perform a kernel bisect between v3.1 final and v3.2-rc1. I'll post a test kernel shortly.

Rainer Rohde (rainer-rohde) wrote :

Sounds good Joseph. Do you have a Logitech mouse with Unifying Receiver as well then?

Joseph Salisbury (jsalisbury) wrote :

I built the first test kernel, which is up to commit:
37be944a0270402f9cda291a930b0286f6dc92f5

This kernel is available from:
http://people.canonical.com/~jsalisbury/lp1039143

Can you test this latest kernel and report back if it has the bug or not?

Thanks in advance!

Rainer Rohde (rainer-rohde) wrote :

Here's the result, Joseph:

uname -a
Linux rrohde-G75VW 3.1.0-030100-generic #201210012104 SMP Mon Oct 1 20:06:18 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux <<< HAS the bug, 3 out of 3 reboots.

Joseph Salisbury (jsalisbury) wrote :

I built the first test kernel, which is up to commit:
7e0bb71e75020348bee523720a0c2f04cc72f540

This kernel is available from:
http://people.canonical.com/~jsalisbury/lp1039143

Can you test this latest kernel and report back if it has the bug or not?

Thanks in advance!

Joseph Salisbury (jsalisbury) wrote :

The previous comment should read: I built the second test kernel.

summary: - 046d:c52b USB3 port Logitech mouse using unifying receiver not always
- detected
+ 046d:c52b USB3 port Logitech mouse using unifying receiver not detected
description: updated
39 comments hidden view all 119 comments
Rainer Rohde (rainer-rohde) wrote :

Joseph, here's the result:

Linux rrohde-G75VW 3.0.0-030000-generic #201211302126 SMP Fri Nov 30 21:27:44 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux <<< *HAS* the bug! Three out of three tries.

Joseph Salisbury (jsalisbury) wrote :

This means the merge base a5d5a914770a81a1f775be2ee35b9fa8fd19d381 is bad.

This means the bug has been fixed between a5d5a914770a81a1f775be2ee35b9fa8fd19d381 and [c3b92c8787367a8bb53d57d9789b558f1295cc96]

I'll do some additional research on this.

Joseph Salisbury (jsalisbury) wrote :

In the mean time, can you test the latest v3.7-rc8 mainline kernel, which can be downloaded from:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.7-rc8-raring/

Rainer Rohde (rainer-rohde) wrote :

Joseph,

Linux rrohde-G75VW 3.7.0-030700rc8-generic #201212031649 SMP Mon Dec 3 21:50:07 UTC 2012 x86_64 x86_64 x86_64 GNU/Linux <<< HAS the bug.

Gavin Graham (gavingraham) wrote :

This bug has a lot of information in it and it is still marked as incomplete. I am happy to help contribute information to progress this report. Just let me know what information is required.

Joseph Salisbury (jsalisbury) wrote :

@Gaving and Rainer,

The v3.7 final kernel is now available. Can you test this kernel to see if it has the bug:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.7-raring/

Gavin Graham (gavingraham) wrote :

@Joseph S,

I'm installaing 3.7.0-7.15 (https://launchpad.net/~francisbrwn9/+archive/kernels/+build/4065747) in an effort to solve another problem so I will let you know how this Kernel goes.

Gavin Graham (gavingraham) wrote :

Errata: Wrong Kernel link. It should be https://launchpad.net/~xorg-edgers/+archive/ppa/+build/4065823. It's the Kernel that is part of xorg-edgers.

Gavin Graham (gavingraham) wrote :

@Joseph,

Well there's no difference by using the xorg-edgers Kernel:
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.407752] usb 3-4: new full-speed USB device number 3 using xhci_hcd
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.426452] usb 3-4: New USB device found, idVendor=046d, idProduct=c52b
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.426460] usb 3-4: New USB device strings: Mfr=1, Product=2, SerialNumber=0
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.426463] usb 3-4: Product: USB Receiver
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.426466] usb 3-4: Manufacturer: Logitech
Dec 17 04:32:54 gavin-N53SV mtp-probe: checking bus 3, device 3: "/sys/devices/pci0000:00/0000:00:14.0/usb3/3-4"
Dec 17 04:32:54 gavin-N53SV mtp-probe: bus: 3, device: 3 was not an MTP device
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.431715] logitech-djreceiver 0003:046D:C52B.0006: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input2
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.431975] logitech-djreceiver 0003:046D:C52B.0006: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32
Dec 17 04:32:54 gavin-N53SV kernel: [ 39.432184] logitech-djreceiver: probe of 0003:046D:C52B.0006 failed with error -32

Gavin Graham (gavingraham) wrote :

@Joseph,

Ok, I've now installed the Kernel from http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.7-raring/ and I am still getting the exact same error messages. The device will always work if I hotplug once booted.

Jelle Foks (jellefoks) wrote :
Download full text (4.0 KiB)

There hasn't been much progress for a while, so I read up on ubuntu kernel building and bisecting (https://wiki.ubuntu.com/Kernel/KernelBisection), finding that I needed to bisect the upstream kernel to find the right commit, then ending up on a 'default configs' commit that the kteam-tools mainline-build-one script makes (...), so doing it again with a separate repo for buillding, and finally landing on this result:

Bisect log attached. The bug is introduced in the commit that adds the hid-logitech-dj driver:

-------------
534a7b8e10ec55d9f521e68c20dbb3634c25b98a is the first bad commit
commit 534a7b8e10ec55d9f521e68c20dbb3634c25b98a
Date: Thu Sep 15 11:34:49 2011 +0200

HID: Add full support for Logitech Unifying receivers
--------------

Which makes sense in hindsight looking at the kernel messages of the good vs bad report, because the good report shows that it's using a generic HID driver, and the bad report shows that it's using the hid-logitech-dj driver.

Then inspecting the logs of the 'bad' case in more detail shows something else interesting:

--------
[ 17.867585] xhci_hcd 0000:00:14.0: WARN: short transfer on control ep
[ 17.867856] xhci_hcd 0000:00:14.0: WARN: short transfer on control ep
[ 17.867980] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 17.868105] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 17.868235] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input2
[ 17.868502] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 17.868511] logitech-djreceiver 0003:046D:C52B.0003: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32
[ 17.868639] logitech-djreceiver: probe of 0003:046D:C52B.0003 failed with error -32
[ 18.893031] xhci_hcd 0000:00:14.0: WARN: short transfer on control ep
[ 18.893287] xhci_hcd 0000:00:14.0: WARN: short transfer on control ep
[ 18.893390] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 18.893501] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 18.893719] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input2
[ 18.893982] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 18.894015] logitech-djreceiver 0003:046D:C52B.0003: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32
[ 18.894291] logitech-djreceiver: probe of 0003:046D:C52B.0003 failed with error -32
[ 19.925347] xhci_hcd 0000:00:14.0: WARN: short transfer on control ep
[ 19.925611] xhci_hcd 0000:00:14.0: WARN: short transfer on control ep
[ 19.925725] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 19.925832] xhci_hcd 0000:00:14.0: WARN: Stalled endpoint
[ 19.926080] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input2
[ 19.929079] input: Logitech Unifying Device. Wireless PID:4007 as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.2/0003:046D:C52B.0003/input/input18
[ 19.929186] logitech-djdevice 0003:046D:C52B.0005: input,hidraw2: USB HID v1.11 Keyboard [Logitech Unifying Device. Wireless PID:4007] on usb-0000:00:14.0-4:1
-------

Those xhci_hcd message...

Read more...

Jelle Foks (jellefoks) wrote :

Attached, dmesg of a 3.8.0rc3 kernel with xhci debugging enabled.

The difference between the successful and failed load is that the line:

[ 18.995664] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw1: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input2

Is followed by different lines between fail and success.

The lines before that are the same between success and fail except for the reported pointer addresses, and twice a "Cycle state = 0x0" for success, and twice a "Cycle state = 0x1" for fail (I haven't investigated what that can mean, and I'm not familiar with the code & protocol, but because it's consistent/always like that, it may be important).

If success, the next 4 lines are:

[ 18.996923] xhci_hcd 0000:00:14.0: ep 0x83 - asked for 32 bytes, 17 bytes untransferred
[ 18.997550] input: Logitech Unifying Device. Wireless PID:4007 as /devices/pci0000:00/0000:00:14.0/usb3/3-4/3-4:1.2/0003:046D:C52B.0003/input/input18
[ 18.997800] logitech-djdevice 0003:046D:C52B.0005: input,hidraw2: USB HID v1.11 Keyboard [Logitech Unifying Device. Wireless PID:4007] on usb-0000:00:14.0-4:1
[ 18.998921] xhci_hcd 0000:00:14.0: ep 0x83 - asked for 32 bytes, 17 bytes untransferred

If fail, the next 4 lines are:

[ 17.947216] xhci_hcd 0000:00:14.0: Stalled endpoint
[ 17.947231] xhci_hcd 0000:00:14.0: Cleaning up stalled endpoint ring
[ 17.947232] xhci_hcd 0000:00:14.0: Finding segment containing stopped TRB.
[ 17.947233] xhci_hcd 0000:00:14.0: Finding endpoint context

I'm adding this to the bug report here, just in case somebody with more knowledge of the xhci or the hardware sees it and more quickly can point out what is wrong with this driver than me examining this for me still unfamiliar code in my spare time...

2 comments hidden view all 119 comments
Jim Mayer (jim-4) wrote :

I can confirm that this bug also affects my system. My system is an off the shelf System76 "Bonobo Extreme" laptop running Ubuntu 12.10 with the latest updates. Consistent with the other reports, this laptop has USB3 ports.

$ uname -a
Linux bigbrick 3.5.0-23-generic #35-Ubuntu SMP Thu Jan 24 13:15:40 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Joseph Salisbury (jsalisbury) wrote :

The v3.8-rc6 kernel is now available. Can folks affected by this bug test this kernel and confirm/deny if it has the bug? The kernel can be downloaded from:

http://kernel.ubuntu.com/~kernel-ppa/mainline/v3.8-rc6-raring/

Ensure you install both the linux-image and linux-image-extra packages.

Thanks in advance!

Jelle Foks (jellefoks) wrote :

Ho Joseph,

Nothing changed. Still fails for me, workaround still works.

Jelle.

---------
[ 5.109384] logitech-djreceiver 0003:046D:C52B.0003: hiddev0,hidraw0: USB HID v1.11 Device [Logitech USB Receiver] on usb-0000:00:14.0-4/input2
[ 5.109658] logitech-djreceiver 0003:046D:C52B.0003: logi_dj_probe:logi_dj_recv_query_paired_devices error:-32
[ 5.109779] logitech-djreceiver: probe of 0003:046D:C52B.0003 failed with error -32

jelle@helium:~$ uname -a
Linux helium 3.8.0-030800rc6-generic #201301312135 SMP Fri Feb 1 02:36:25 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
jelle@helium:~$ dpkg -l '*linux-*rc6*'
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name Version Architecture Description
+++-=============================================================-===================================-===================================-================================================================================================================================
ii linux-headers-3.8.0-030800rc6 3.8.0-030800rc6.201301312135 all Header files related to Linux kernel version 3.8.0
ii linux-headers-3.8.0-030800rc6-generic 3.8.0-030800rc6.201301312135 amd64 Linux kernel headers for version 3.8.0 on 64 bit x86 SMP
ii linux-image-3.8.0-030800rc6-generic 3.8.0-030800rc6.201301312135 amd64 Linux kernel image for version 3.8.0 on 64 bit x86 SMP
ii linux-image-extra-3.8.0-030800rc6-generic 3.8.0-030800rc6.201301312135 amd64 Linux kernel image for version 3.8.0 on 64 bit x86 SMP

Rainer Rohde (rainer-rohde) wrote :

Joseph,

Linux rrohde-G75VW 3.8.0-030800rc6-generic #201301312135 SMP Fri Feb 1 02:36:25 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux <<< HAS the bug. :(

Well, hasn't this been bisected to death? Shouldn't we have a fix by now? How long has this been going on? Sorry, just a bit frustrating and wondering as to why this isn't fixed yet... sigh.

Thanks for all the help so far, though.

Jelle Foks (jellefoks) wrote :

I had some time today to look at this, and assuming that maybe the usb3 interface is sometimes accessing the device before it is ready, I added a short sleep into the logi_dj_recv_query_paired_devices function.

With the modification, I have not been able to trigger the error again. I did not do extensive testing (yet), but enough to convince myself that this is very likely a working fix for the problem in this bug report.

Perhaps others can test this patch? It will probably apply cleanly to pretty much any kernel version that includes the new logitech unifying receiver driver (hid-logitech-dj.c). The version I used was 3.8.0-030800rc6-generic.

tags: added: patch
Joseph Salisbury (jsalisbury) wrote :

This bug is probably related to commit 534a7b8e10ec55d9f521e68c20dbb3634c25b98a . It might be best to request some feedback from upstream and that commit author regarding this bug.

Jelle Foks (jellefoks) wrote :

Yes. It is a commit that adds a special hid driver for this hardware. Before that commit, when the bug is not present, the generic hid driver is used.

So, it's quite possible that the new driver never worked correctly on USB3 hardware.

I'd like to see a confirmation from somebody on this bug report about this fix before I contact upstream.

I made a ppa where I uploaded a kernel with the patch (version 3.8.0-6.11jelle) to make it easier for people to test. It's stilI building the package at the moment, but I'll verify the ppa myself as soon as the package build is finished.

This is the ppa: https://launchpad.net/~jellefoks/+archive/ppa

Joseph Salisbury (jsalisbury) wrote :

Thanks for the great work, Jelle!

Jelle Foks (jellefoks) wrote :

Note: The raring kernel in my ppa (version 3.8.0-6.12djreceiver) fixes the problem for me.

I'll see if I can dput a quantal (12.10) kernel with the fix there too.

Rainer Rohde (rainer-rohde) wrote :

Thanks for your efforts, Jelle.

The question is -- when will this be added into the mainline kernel? I am wondering because I am on 3.8.0-8-generic and it is still not fixed. :)

Thanks.

David Piggott (dhpiggott) wrote :

I've just switched from a Dell XPS 15z (which had one USB3 and two USB2 ports). I had the problem on there but worked around it by using one of the USB2 ports.

I'm now using a Dell XPS 13 which has only two USB3 ports and it seems to be pot luck as to which reboots the receiver works with and which it doesn't.

Running 12.10:
$ uname -a
Linux panther 3.5.0-25-generic #39-Ubuntu SMP Mon Feb 25 18:26:58 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Nothing suprising so far - this all seems consistent with the extensive testing you've been doing here (and thanks for it!).

Anyway, my reason for posting is this:

I want to use the workaround that the description refers to (https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1039143/comments/55) but I cannot see an attached "mousefix" script.

Am I missing something obvious or is the script no longer attached? Either way, it'd be great if someone could point me to a copy. At least for the next week or so the only thing I really have time for is a work around.

Cheers.

David Piggott (dhpiggott) wrote :

Ack, sorry everyone. I found "mousefix" moments later by clicking "See full activity log". I'm still new-ish to Launchpad.

For anyone else looking for it: https://launchpadlibrarian.net/120794968/mousefix

brigadierschmit (bamory57) wrote :

When adding "nolapic" option to the grub kernel line, it works flawlessly.

Hope this helps somebody.

Cheers.

Joseph Salisbury (jsalisbury) wrote :

Patch submitted upstream and sent to stable:
https://lkml.org/lkml/2013/3/5/325

Thanks for the great work, Jelle Foks!

Changed in linux (Ubuntu):
status: Incomplete → Fix Committed
Joseph Salisbury (jsalisbury) wrote :

git describe --contains dcd9006
v3.9-rc2~11^2

Jelle Foks (jellefoks) wrote :

Cool. Well, that should fix it, and I got a smidgeon of recognition on lkml out of it. Let's move on to the next bug ;-)

Julian Wiedmann (jwiedmann) wrote :

Released for Quantal (3.5.0-28.48) and Raring (3.8.0-13.22).

Changed in linux (Ubuntu):
status: Fix Committed → Fix Released
Luke Huxley (luke-huxley) wrote :

Any chance this fix is going to be backported to 12.04?

IDK about the 3.2 series kernel, but the quantal kernal is available for release 12.04.2, and this already has the fix. Upgrade your kernel and you should be good to go.

Sry forgot to say, the current kernel id you want is 3.5.0-34.

Rainer Rohde (rainer-rohde) wrote :

Just FYI -- this bug is back with kernel 3.10.0-0-generic on Ubuntu 13.10... :(

J.J. Valenzuela (computer-b) wrote :

So, which kernels is this bug KNOWN FOR A FACT to not be present? (that is, which kernels work)

Joseph Salisbury (jsalisbury) wrote :

This could be due to the following revert:
8af6c08 - Revert "HID: Fix logitech-dj: missing Unifying device issue"

Displaying first 40 and last 40 comments. View all 119 comments or add a comment.