summaryrefslogtreecommitdiff
path: root/drivers/dahdi/dahdi-base.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/dahdi/dahdi-base.c')
-rw-r--r--drivers/dahdi/dahdi-base.c32
1 files changed, 3 insertions, 29 deletions
diff --git a/drivers/dahdi/dahdi-base.c b/drivers/dahdi/dahdi-base.c
index bded1c0..b72576d 100644
--- a/drivers/dahdi/dahdi-base.c
+++ b/drivers/dahdi/dahdi-base.c
@@ -8751,40 +8751,14 @@ static void process_timers(void)
spin_unlock(&dahdi_timer_lock);
}
-/**
- * dahdi_timer_poll - Poll function for a dahdi_timer.
- * @file: Open timer handle.
- * @wait_table: Just passing through...
- *
- * Returns 0 if there isn't anything to wake us up, otherwise POLLPRI if there
- * is an event waiting on the timer.
- *
- * Older versions of Asterisk depend on the behavior that this poll will block
- * indefintely if the timer has not been configured, so if there is no rate
- * attached to the timer, this function must return 0.
- *
- */
-static unsigned int
-dahdi_timer_poll(struct file *file, struct poll_table_struct *wait_table)
+static unsigned int dahdi_timer_poll(struct file *file, struct poll_table_struct *wait_table)
{
struct dahdi_timer *timer = file->private_data;
- struct dahdi_timer_rate *rate;
+ struct dahdi_timer_rate *rate = timer->rate;
- if (!timer)
+ if (!rate || !timer)
return -EINVAL;
- rate = timer->rate;
-
- if (!rate) {
- static bool __once;
- if (!__once) {
- __once = true;
- module_printk(KERN_NOTICE,
- "Calling poll on unconfigured timer.\n");
- }
- return 0;
- }
-
poll_wait(file, &rate->sel, wait_table);
if (atomic_read(&timer->tripped) || atomic_read(&timer->ping))
return POLLPRI;