freebsd-dev/sys/dev/ioat
Conrad Meyer c114e74120 ioat(4): Allow callouts to be scheduled after hw reset
is_completion_pending governs whether or not a callout will be scheduled
when new work is queued on the IOAT device.  If true, a callout is
already scheduled, so we do not need a new one.  If false, we schedule
one and set it true.  Because resetting the hardware completed all
outstanding work but failed to clear is_completion_pending, no new
callout could be scheduled after a reset with pending work.

This resulted in a driver hang for polled-only work.
2016-08-22 14:51:09 +00:00
..
ioat_hw.h ioat(4): Export HW capabilities to consumers 2016-07-12 21:56:49 +00:00
ioat_internal.h ioat(4): Submitters pick up a shovel if queue is too full 2016-07-12 21:56:46 +00:00
ioat_test.c ioat(4): ioat_get_dmaengine(): Add M_WAITOK mode 2016-04-09 13:15:34 +00:00
ioat_test.h
ioat.c ioat(4): Allow callouts to be scheduled after hw reset 2016-08-22 14:51:09 +00:00
ioat.h ioat(4): Export HW capabilities to consumers 2016-07-12 21:56:49 +00:00