Re: Problem when USB hub is inserted

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

 



On 05/27/2010 08:20 AM, Alan Stern wrote:

Can you do a bisection search between those two kernels to find out
where the problems start to appear?

I was not able to do the bisect. Tomorrow I will try with a guy that is much more expert than I am with git and I will see.

I'm surprised you were able to get anything to work at all with that
code removed.  The qtd_copy_status() routine is where the driver
determines how many bytes were transferred between the computer and the
device.  Without it, the computer would think no data was getting
transferred.

After some further investigation, I have found that if I change:
ehci-q.c qtd_copy_status() line 153:

********
if (likely (QTD_PID (token) != 2))
		urb->actual_length += length - QTD_LENGTH (token);
********
int temp;
...
if (likely (QTD_PID (token) != 2))
		temp = length - QTD_LENGTH (token);
********

(I used "temp" just to execute all the code, but not modify the value of "urb->actual_length") the problem I have with interrupts disappears!!! Again, read performance from a memory stick goes down 3 or 4 times.

Any idea what could be that triggers this problem? Please note, the problem is present only if I attach a hub; without hubs everything's fine (but 2.6.19 was working even with hubs)


bye!
as


--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


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

  Powered by Linux