mirror of
https://github.com/torvalds/linux
synced 2024-11-05 18:23:50 +00:00
0d5c10b4c8
Add wq drain support. When a wq is being released, it needs to wait for
all in-flight operation to complete. A device control function
idxd_wq_drain() has been added to facilitate this. A wq drain call
is added to the char dev on release to make sure all user operations are
complete. A wq drain is also added before the wq is being disabled.
A drain command can take an unpredictable period of time. Interrupt support
for device commands is added to allow waiting on the command to
finish. If a previous command is in progress, the new submitter can block
until the current command is finished before proceeding. The interrupt
based submission will submit the command and then wait until a command
completion interrupt happens to complete. All commands are moved to the
interrupt based command submission except for the device reset during
probe, which will be polled.
Fixes:
|
||
---|---|---|
.. | ||
cdev.c | ||
device.c | ||
dma.c | ||
idxd.h | ||
init.c | ||
irq.c | ||
Makefile | ||
registers.h | ||
submit.c | ||
sysfs.c |