Lines Matching refs:ev_queue
1684 struct devx_async_event_queue ev_queue;
1688 static void devx_init_event_queue(struct devx_async_event_queue *ev_queue)
1690 spin_lock_init(&ev_queue->lock);
1691 INIT_LIST_HEAD(&ev_queue->event_list);
1692 init_waitqueue_head(&ev_queue->poll_wait);
1693 atomic_set(&ev_queue->bytes_in_use, 0);
1694 ev_queue->is_destroyed = 0;
1708 devx_init_event_queue(&ev_file->ev_queue);
1750 struct devx_async_event_queue *ev_queue = &ev_file->ev_queue;
1758 spin_lock_irqsave(&ev_queue->lock, flags);
1759 list_add_tail(&async_data->list, &ev_queue->event_list);
1760 spin_unlock_irqrestore(&ev_queue->lock, flags);
1762 wake_up_interruptible(&ev_queue->poll_wait);
1811 if (atomic_add_return(cmd_out_len, &ev_file->ev_queue.bytes_in_use) >
1813 atomic_sub(cmd_out_len, &ev_file->ev_queue.bytes_in_use);
1849 atomic_sub(cmd_out_len, &ev_file->ev_queue.bytes_in_use);
2602 struct devx_async_event_queue *ev_queue = &comp_ev_file->ev_queue;
2607 spin_lock_irq(&ev_queue->lock);
2609 while (list_empty(&ev_queue->event_list)) {
2610 spin_unlock_irq(&ev_queue->lock);
2616 ev_queue->poll_wait,
2617 (!list_empty(&ev_queue->event_list) ||
2618 ev_queue->is_destroyed))) {
2622 spin_lock_irq(&ev_queue->lock);
2623 if (ev_queue->is_destroyed) {
2624 spin_unlock_irq(&ev_queue->lock);
2629 event = list_entry(ev_queue->event_list.next,
2635 spin_unlock_irq(&ev_queue->lock);
2639 list_del(ev_queue->event_list.next);
2640 spin_unlock_irq(&ev_queue->lock);
2647 atomic_sub(event->cmd_out_len, &ev_queue->bytes_in_use);
2656 struct devx_async_event_queue *ev_queue = &comp_ev_file->ev_queue;
2659 poll_wait(filp, &ev_queue->poll_wait, wait);
2661 spin_lock_irq(&ev_queue->lock);
2662 if (ev_queue->is_destroyed)
2664 else if (!list_empty(&ev_queue->event_list))
2666 spin_unlock_irq(&ev_queue->lock);
2800 struct devx_async_event_queue *ev_queue = &comp_ev_file->ev_queue;
2803 spin_lock_irq(&ev_queue->lock);
2804 ev_queue->is_destroyed = 1;
2805 spin_unlock_irq(&ev_queue->lock);
2806 wake_up_interruptible(&ev_queue->poll_wait);
2810 spin_lock_irq(&comp_ev_file->ev_queue.lock);
2812 &comp_ev_file->ev_queue.event_list, list) {
2816 spin_unlock_irq(&comp_ev_file->ev_queue.lock);