diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2009-11-19 18:10:43 +0000 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2009-11-19 18:10:43 +0000 |
commit | 0160950297c08f8233c89b9f9e7dd59cfb080809 (patch) | |
tree | 4910bfb7ab5b4000a1679fd165d217ff48226268 /Documentation | |
parent | 4d8bb2cbccf6dccaada509aafeb01c6205c9d8c4 (diff) | |
download | op-kernel-dev-0160950297c08f8233c89b9f9e7dd59cfb080809.zip op-kernel-dev-0160950297c08f8233c89b9f9e7dd59cfb080809.tar.gz |
SLOW_WORK: Add support for cancellation of slow work
Add support for cancellation of queued slow work and delayed slow work items.
The cancellation functions will wait for items that are pending or undergoing
execution to be discarded by the slow work facility.
Attempting to enqueue work that is in the process of being cancelled will
result in ECANCELED.
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'Documentation')
-rw-r--r-- | Documentation/slow-work.txt | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/Documentation/slow-work.txt b/Documentation/slow-work.txt index c655c51..2e384bd 100644 --- a/Documentation/slow-work.txt +++ b/Documentation/slow-work.txt @@ -108,7 +108,17 @@ on the item, 0 otherwise. The items are reference counted, so there ought to be no need for a flush -operation. When all a module's slow work items have been processed, and the +operation. But as the reference counting is optional, means to cancel +existing work items are also included: + + cancel_slow_work(&myitem); + +can be used to cancel pending work. The above cancel function waits for +existing work to have been executed (or prevent execution of them, depending +on timing). + + +When all a module's slow work items have been processed, and the module has no further interest in the facility, it should unregister its interest: |