Bug 206427 - go7007 driver fails to handle interrupt
Summary: go7007 driver fails to handle interrupt
Status: NEW
Alias: None
Product: Drivers
Classification: Unclassified
Component: USB (show other bugs)
Hardware: x86-64 Linux
: P1 normal
Assignee: Default virtual assignee for Drivers/USB
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-02-05 12:24 UTC by Josef Möllers
Modified: 2020-02-06 15:43 UTC (History)
1 user (show)

See Also:
Kernel Version: 5.3.18
Tree: Mainline
Regression: No


Attachments
Kernel trace shown when error is reported. (5.21 KB, text/plain)
2020-02-05 12:24 UTC, Josef Möllers
Details
More from /var/log/messages (10.71 KB, text/plain)
2020-02-05 12:35 UTC, Josef Möllers
Details
Messages from kernel 5.5.1 (324.67 KB, text/plain)
2020-02-05 15:44 UTC, Josef Möllers
Details
lsusb -v output of device, dmesg and hwinfo (370.04 KB, application/x-compressed-tar)
2020-02-06 10:00 UTC, Josef Möllers
Details
Fix patch (1.73 KB, patch)
2020-02-06 15:43 UTC, Takashi Iwai
Details | Diff

Description Josef Möllers 2020-02-05 12:24:50 UTC
Created attachment 287141 [details]
Kernel trace shown when error is reported.

When connecting a Plextor ConvertX M402U video converter, a "BOGUS urb xfer" is reported and a Call Trace is dumped.
I assume that the go7007 driver has not been fully supported in newer kernel versions as it definitely used to work in 2.x kernels!
Comment 1 Greg Kroah-Hartman 2020-02-05 12:29:28 UTC
On Wed, Feb 05, 2020 at 12:24:50PM +0000, bugzilla-daemon@bugzilla.kernel.org wrote:
> https://bugzilla.kernel.org/show_bug.cgi?id=206427
> 
>             Bug ID: 206427
>            Summary: go7007 driver fails to handle interrupt
>            Product: Drivers
>            Version: 2.5
>     Kernel Version: 5.3.18
>           Hardware: x86-64
>                 OS: Linux
>               Tree: Mainline
>             Status: NEW
>           Severity: normal
>           Priority: P1
>          Component: USB
>           Assignee: drivers_usb@kernel-bugs.kernel.org
>           Reporter: josef.moellers@suse.com
>         Regression: No
> 
> Created attachment 287141 [details]
>   --> https://bugzilla.kernel.org/attachment.cgi?id=287141&action=edit
> Kernel trace shown when error is reported.
> 
> When connecting a Plextor ConvertX M402U video converter, a "BOGUS urb xfer"
> is
> reported and a Call Trace is dumped.
> I assume that the go7007 driver has not been fully supported in newer kernel
> versions as it definitely used to work in 2.x kernels!

Can you provide the full kernel log message here please?

And can you try the 5.5 kernel, 5.3.y is old and obsolete.

thanks,

greg k-h
Comment 2 Josef Möllers 2020-02-05 12:35:22 UTC
Created attachment 287145 [details]
More from /var/log/messages

Is this enough or do you need the entire /var/log/messages?
Comment 3 Takashi Iwai 2020-02-05 13:45:35 UTC
FWIW, 5.5.y kernel is found in OBS Kernel:stable and Kernel:HEAD repos (both are equivalent at this moment).
Comment 4 Josef Möllers 2020-02-05 13:57:57 UTC
Thanks. I'm just waiting for the build to finish, it's writing out the RPMs.
Comment 5 Josef Möllers 2020-02-05 15:43:51 UTC
(In reply to Greg Kroah-Hartman from comment #1)

> And can you try the 5.5 kernel, 5.3.y is old and obsolete.


It took a while, but: Yes, the problem still exists in 5.5.1!

I'll atache the relevant part of the messages file.
Comment 6 Josef Möllers 2020-02-05 15:44:52 UTC
Created attachment 287149 [details]
Messages from kernel 5.5.1

These log messages are from the 5.5.1 kernel.
Comment 7 Takashi Iwai 2020-02-06 09:27:56 UTC
Could you give lsusb -v output of this device, too?
Comment 8 Takashi Iwai 2020-02-06 09:33:44 UTC
Also please give the whole dmesg output from the boot.  hwinfo output would be helpful, too.
Comment 9 Josef Möllers 2020-02-06 10:00:08 UTC
Created attachment 287159 [details]
lsusb -v output of device, dmesg and hwinfo

This is slightly different from what I remember:
In Ye Olde Days, the device would present itself as 093b:a002 and (through a udev rule), a script would be run which downloaded the firmware (through /sbin/fxload some hex file) to the device which would then disconnect and reconnect as 093b:a102.

Now I see in the journal that this is now handled by go7007-loader.ko loading /lib/firmware/go7007/px-m402u.fw!

Anyways ... infos attached.
Comment 10 Takashi Iwai 2020-02-06 15:34:46 UTC
Yes, the firmware loading mechanism went to the kernel module.

The kernel warning seems fixed by correcting the urb properly like the patch below.  I'll submit to upstream.
Comment 11 Takashi Iwai 2020-02-06 15:43:12 UTC
Created attachment 287177 [details]
Fix patch

Note You need to log in before you can comment on or make changes to this bug.