lantiq: Reduce ugliness of ugly hack
Signed-off-by: Daniel Gimpelevich <daniel@gimpelevich.san-francisco.ca.us>
This commit is contained in:
parent
e8780b643b
commit
8333a6d0ba
1 changed files with 4 additions and 14 deletions
|
@ -1,6 +1,6 @@
|
|||
--- a/src/include/drv_dsl_cpe_os_linux.h
|
||||
+++ b/src/include/drv_dsl_cpe_os_linux.h
|
||||
@@ -214,12 +214,35 @@ static inline int dsl_mutex_lock(struct
|
||||
@@ -214,12 +214,25 @@ static inline int dsl_mutex_lock(struct
|
||||
#define DSL_DRV_MUTEX_LOCK(id) down_interruptible(&(id))
|
||||
#define DSL_DRV_MUTEX_UNLOCK(id) up(&(id))
|
||||
#endif
|
||||
|
@ -8,21 +8,11 @@
|
|||
+static inline long
|
||||
+ugly_hack_sleep_on_timeout(wait_queue_head_t *q, long timeout)
|
||||
+{
|
||||
+ unsigned long flags;
|
||||
+ wait_queue_t wait;
|
||||
+
|
||||
+ init_waitqueue_entry(&wait, current);
|
||||
+
|
||||
+ __set_current_state(TASK_INTERRUPTIBLE);
|
||||
+ spin_lock_irqsave(&q->lock, flags);
|
||||
+ __add_wait_queue(q, &wait);
|
||||
+ spin_unlock(&q->lock);
|
||||
+ DEFINE_WAIT(wait);
|
||||
+
|
||||
+ prepare_to_wait(q, &wait, TASK_INTERRUPTIBLE);
|
||||
+ timeout = schedule_timeout(timeout);
|
||||
+
|
||||
+ spin_lock_irq(&q->lock);
|
||||
+ __remove_wait_queue(q, &wait);
|
||||
+ spin_unlock_irqrestore(&q->lock, flags);
|
||||
+ finish_wait(q, &wait);
|
||||
+
|
||||
+ return timeout;
|
||||
+}
|
||||
|
|
Loading…
Reference in a new issue