Alan Stern wrote:
In other words, I'm guessing that you're suffering from hardware memory
errors.  A possible way to test this is to modify the patch.  In
td_free() where it adds the line:

+                       ohci_dbg(hc, "(%d %d) %p -> %p\n", hash, n, prev, 

instead add this code:

+                       barrier();
+                       ohci_dbg(hc, "(%d %d) %p -> %p [%p]\n", hash, n,
+                                       prev, *prev, td->td_hash);

If we find that the value of *prev differs from the value of
td->td_hash then we'll know for certain. (Or maybe the presence of the barrier() will cause the object code to change in a way that prevents the error from occurring.)

Alan Stern
Hmm, I applied the changes and I did not see a place where *prev differs from td->td_hash. I have run memtest86+ on this box and it has passed 16 times, so I do not suspect a hardware memory error. What do you think? Attached is the latest dmesg output.


Attachment: dmesg3.log.tar.gz
Description: Unix tar archive

Reply via email to