Lines Matching refs:uwbd
255 static int uwbd(void *param)
264 rc->uwbd.wq,
265 !list_empty(&rc->uwbd.event_list)
272 spin_lock_irqsave(&rc->uwbd.event_list_lock, flags);
273 if (!list_empty(&rc->uwbd.event_list)) {
274 evt = list_first_entry(&rc->uwbd.event_list, struct uwb_event, list_node);
278 spin_unlock_irqrestore(&rc->uwbd.event_list_lock, flags);
294 rc->uwbd.task = kthread_run(uwbd, rc, "uwbd");
295 if (rc->uwbd.task == NULL)
299 rc->uwbd.pid = rc->uwbd.task->pid;
305 kthread_stop(rc->uwbd.task);
326 spin_lock_irqsave(&rc->uwbd.event_list_lock, flags);
327 if (rc->uwbd.pid != 0) {
328 list_add(&evt->list_node, &rc->uwbd.event_list);
329 wake_up_all(&rc->uwbd.wq);
336 spin_unlock_irqrestore(&rc->uwbd.event_list_lock, flags);
344 spin_lock_irq(&rc->uwbd.event_list_lock);
345 list_for_each_entry_safe(evt, nxt, &rc->uwbd.event_list, list_node) {
354 spin_unlock_irq(&rc->uwbd.event_list_lock);