The CHANSTS register is a split 64-bit register on CBDMA units before hardware v3.3. If a torn read happens during ioat_process_events(), software cannot know when to stop completing descriptors correctly. So, just use the device-pushed main memory channel status instead. Remove the ioat_get_active() seatbelt as well. It does nothing if the completion address is valid. Sponsored by: Dell EMC Isilon |
||
---|---|---|
.. | ||
ioat_hw.h | ||
ioat_internal.h | ||
ioat_test.c | ||
ioat_test.h | ||
ioat.c | ||
ioat.h |