diff options
author | David Howells <dhowells@redhat.com> | 2012-12-13 20:03:13 +0000 |
---|---|---|
committer | David Howells <dhowells@redhat.com> | 2012-12-20 22:34:00 +0000 |
commit | 1f372dff1da37e2b36ae9085368fa46896398598 (patch) | |
tree | f47b00dc61c9cf6c0eaa6d437bd7f91bfcb4d76d /include | |
parent | 7ef001e937e8b9cbedb2fc1c31dd681ac3b31927 (diff) | |
download | linux-1f372dff1da37e2b36ae9085368fa46896398598.tar.gz linux-1f372dff1da37e2b36ae9085368fa46896398598.tar.bz2 linux-1f372dff1da37e2b36ae9085368fa46896398598.zip |
FS-Cache: Mark cancellation of in-progress operation
Mark as cancelled an operation that is in progress rather than pending at the
time it is cancelled, and call fscache_complete_op() to cancel an operation so
that blocked ops can be started.
Signed-off-by: David Howells <dhowells@redhat.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/fscache-cache.h | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/include/linux/fscache-cache.h b/include/linux/fscache-cache.h index 73e68c8d5df4..5dfa0aa216b6 100644 --- a/include/linux/fscache-cache.h +++ b/include/linux/fscache-cache.h @@ -116,7 +116,7 @@ extern atomic_t fscache_op_debug_id; extern void fscache_op_work_func(struct work_struct *work); extern void fscache_enqueue_operation(struct fscache_operation *); -extern void fscache_op_complete(struct fscache_operation *); +extern void fscache_op_complete(struct fscache_operation *, bool); extern void fscache_put_operation(struct fscache_operation *); /** @@ -196,7 +196,7 @@ static inline void fscache_retrieval_complete(struct fscache_retrieval *op, { op->n_pages -= n_pages; if (op->n_pages <= 0) - fscache_op_complete(&op->op); + fscache_op_complete(&op->op, true); } /** |