mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-11-24 14:30:58 +07:00
FS-Cache: Out of line fscache_operation_init()
Out of line fscache_operation_init() so that it can access internal FS-Cache features, such as stats, in a later commit. Signed-off-by: David Howells <dhowells@redhat.com> Reviewed-by: Steve Dickson <steved@redhat.com> Acked-by: Jeff Layton <jeff.layton@primarydata.com>
This commit is contained in:
parent
418b7eb9e1
commit
1339ec98e3
@ -20,6 +20,28 @@
|
|||||||
atomic_t fscache_op_debug_id;
|
atomic_t fscache_op_debug_id;
|
||||||
EXPORT_SYMBOL(fscache_op_debug_id);
|
EXPORT_SYMBOL(fscache_op_debug_id);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* fscache_operation_init - Do basic initialisation of an operation
|
||||||
|
* @op: The operation to initialise
|
||||||
|
* @release: The release function to assign
|
||||||
|
*
|
||||||
|
* Do basic initialisation of an operation. The caller must still set flags,
|
||||||
|
* object and processor if needed.
|
||||||
|
*/
|
||||||
|
void fscache_operation_init(struct fscache_operation *op,
|
||||||
|
fscache_operation_processor_t processor,
|
||||||
|
fscache_operation_release_t release)
|
||||||
|
{
|
||||||
|
INIT_WORK(&op->work, fscache_op_work_func);
|
||||||
|
atomic_set(&op->usage, 1);
|
||||||
|
op->state = FSCACHE_OP_ST_INITIALISED;
|
||||||
|
op->debug_id = atomic_inc_return(&fscache_op_debug_id);
|
||||||
|
op->processor = processor;
|
||||||
|
op->release = release;
|
||||||
|
INIT_LIST_HEAD(&op->pend_link);
|
||||||
|
}
|
||||||
|
EXPORT_SYMBOL(fscache_operation_init);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* fscache_enqueue_operation - Enqueue an operation for processing
|
* fscache_enqueue_operation - Enqueue an operation for processing
|
||||||
* @op: The operation to enqueue
|
* @op: The operation to enqueue
|
||||||
|
@ -119,27 +119,9 @@ extern void fscache_op_work_func(struct work_struct *work);
|
|||||||
extern void fscache_enqueue_operation(struct fscache_operation *);
|
extern void fscache_enqueue_operation(struct fscache_operation *);
|
||||||
extern void fscache_op_complete(struct fscache_operation *, bool);
|
extern void fscache_op_complete(struct fscache_operation *, bool);
|
||||||
extern void fscache_put_operation(struct fscache_operation *);
|
extern void fscache_put_operation(struct fscache_operation *);
|
||||||
|
extern void fscache_operation_init(struct fscache_operation *,
|
||||||
/**
|
fscache_operation_processor_t,
|
||||||
* fscache_operation_init - Do basic initialisation of an operation
|
fscache_operation_release_t);
|
||||||
* @op: The operation to initialise
|
|
||||||
* @release: The release function to assign
|
|
||||||
*
|
|
||||||
* Do basic initialisation of an operation. The caller must still set flags,
|
|
||||||
* object and processor if needed.
|
|
||||||
*/
|
|
||||||
static inline void fscache_operation_init(struct fscache_operation *op,
|
|
||||||
fscache_operation_processor_t processor,
|
|
||||||
fscache_operation_release_t release)
|
|
||||||
{
|
|
||||||
INIT_WORK(&op->work, fscache_op_work_func);
|
|
||||||
atomic_set(&op->usage, 1);
|
|
||||||
op->state = FSCACHE_OP_ST_INITIALISED;
|
|
||||||
op->debug_id = atomic_inc_return(&fscache_op_debug_id);
|
|
||||||
op->processor = processor;
|
|
||||||
op->release = release;
|
|
||||||
INIT_LIST_HEAD(&op->pend_link);
|
|
||||||
}
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* data read operation
|
* data read operation
|
||||||
|
Loading…
Reference in New Issue
Block a user