In r304602, I mistakenly removed the ioat_process_events check that we weren't processing events before the hardware had completed the descriptor ("last_seen"). Reinstate that logic. Keep the defensive loop condition and additionally make sure we've actually completed a descriptor before blindly chasing the ring around. In reset, queue and finish the startup command before allowing any event processing or submission to occur. Avoid potential missed callouts by requeueing the poll later. |
||
---|---|---|
.. | ||
ioat_hw.h | ||
ioat_internal.h | ||
ioat_test.c | ||
ioat_test.h | ||
ioat.c | ||
ioat.h |