[Bug 217862] [BUG] Alauda driver causes oops when inserted with card in with transfer buffer is on stack, throws errors if card is inserted afterwards.

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

 



https://bugzilla.kernel.org/show_bug.cgi?id=217862

Alan Stern (stern@xxxxxxxxxxxxxxxxxxx) changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |stern@xxxxxxxxxxxxxxxxxxx

--- Comment #11 from Alan Stern (stern@xxxxxxxxxxxxxxxxxxx) ---
It's hard to tell exactly what's happening.  There are several different odd
things going on.

In the first test, the device seems to alternate between saying that the media
is present and that it isn't present.  No way to tell why it's doing this.

The oops in the second test results from the fact that the
alauda_ensure_map_for_zone() routine doesn't check the return value from its
call to alauda_read_map().  That's bad programming.  But the reason the call
failed was because the command transferred by alauda_get_redu_data() wasn't
accepted by the device.  Instead the command timed out and the driver had to
cancel it and reset the device.

The same thing happened with the command transferred by alauda_reset_media() in
the first test.  I can't tell if the problem is that the command isn't being
sent properly or that the device isn't working properly.

Can you collect a USB trace on the Windows system (with Wireshark or something
similar)?  If it shows the same command being sent and accepted by the device,
it will mean there's something wrong with the way the commands are transferred
on the Linux system.

-- 
You may reply to this email to add a comment.

You are receiving this mail because:
You are watching the assignee of the bug.



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

  Powered by Linux