Status:

Closed June 16, 2004

Participants:

John Jacobsen working on the DOR driver

Symptoms:

Occasionally a block of data is corrupted. A 149 byte long fragment of the data block is placed in the buffer 149 bytes from where  it should be.  See related emails in the archive for samples of problem data.

Approach:

driver debugging (anything else will get into far more detail than anyone will read.  If they want to know, they can ask me or look at my voluminous notes)

Solution:

fixed a race condition in the read function of the driver 

Summary:

A bug was found in some real-time part of the driver code, and fixed. 

<closing date>  LBNL for IceCube

Hi folks,

I have fixed a bug in the DOR driver where data received from the DOM got corrupted under extremely flow-controlled situations.  It turns out that the problems we had with this particular test involved both hardware and firmware.  The firmware bug was fixed a few days ago by Kalle and Thorsten and the driver bug (a subtle race between the read function and the interrupt handler) was fixed today.

I plan to deliver a new version of the driver shortly, since some new-pkt use is already occurring at PSL.  I then plan to run the comms test I described a week or so ago at both warm and cold temperatures, modulo freezer availability at LBNL.  Currently the only problem I know of with the new packet format protocol is that DMA is still broken (I think).  This is a performance issue only, though, and shouldn't interfere with testing at PSL.

Cheers,

John