From fc916da52dde736605137c7d528e2cdec7f81bca Mon Sep 17 00:00:00 2001 From: Al Viro Date: Tue, 19 Jan 2016 12:26:13 -0500 Subject: orangefs: get rid of macros Signed-off-by: Al Viro Signed-off-by: Mike Marshall --- fs/orangefs/waitqueue.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) (limited to 'fs/orangefs/waitqueue.c') diff --git a/fs/orangefs/waitqueue.c b/fs/orangefs/waitqueue.c index 751c3c640a52..4730baf686b2 100644 --- a/fs/orangefs/waitqueue.c +++ b/fs/orangefs/waitqueue.c @@ -41,6 +41,31 @@ void purge_waiting_ops(void) spin_unlock(&orangefs_request_list_lock); } +static inline void +add_op_to_request_list(struct orangefs_kernel_op_s *op) +{ + spin_lock(&orangefs_request_list_lock); + spin_lock(&op->lock); + set_op_state_waiting(op); + list_add_tail(&op->list, &orangefs_request_list); + spin_unlock(&orangefs_request_list_lock); + spin_unlock(&op->lock); + wake_up_interruptible(&orangefs_request_list_waitq); +} + +static inline +void add_priority_op_to_request_list(struct orangefs_kernel_op_s *op) +{ + spin_lock(&orangefs_request_list_lock); + spin_lock(&op->lock); + set_op_state_waiting(op); + + list_add(&op->list, &orangefs_request_list); + spin_unlock(&orangefs_request_list_lock); + spin_unlock(&op->lock); + wake_up_interruptible(&orangefs_request_list_waitq); +} + /* * submits a ORANGEFS operation and waits for it to complete * @@ -252,6 +277,25 @@ retry_servicing: return ret; } +static inline void remove_op_from_request_list(struct orangefs_kernel_op_s *op) +{ + struct list_head *tmp = NULL; + struct list_head *tmp_safe = NULL; + struct orangefs_kernel_op_s *tmp_op = NULL; + + spin_lock(&orangefs_request_list_lock); + list_for_each_safe(tmp, tmp_safe, &orangefs_request_list) { + tmp_op = list_entry(tmp, + struct orangefs_kernel_op_s, + list); + if (tmp_op && (tmp_op == op)) { + list_del(&tmp_op->list); + break; + } + } + spin_unlock(&orangefs_request_list_lock); +} + void orangefs_clean_up_interrupted_operation(struct orangefs_kernel_op_s *op) { /* -- cgit