Lines Matching defs:vw
138 static void __vt_event_queue(struct vt_event_wait *vw)
142 INIT_LIST_HEAD(&vw->list);
143 vw->done = 0;
146 list_add(&vw->list, &vt_events);
150 static void __vt_event_wait(struct vt_event_wait *vw)
153 wait_event_interruptible(vt_event_waitqueue, vw->done);
156 static void __vt_event_dequeue(struct vt_event_wait *vw)
162 list_del(&vw->list);
168 * @vw: our event
175 static void vt_event_wait(struct vt_event_wait *vw)
177 __vt_event_queue(vw);
178 __vt_event_wait(vw);
179 __vt_event_dequeue(vw);
191 struct vt_event_wait vw;
193 if (copy_from_user(&vw.event, event, sizeof(struct vt_event)))
196 if (vw.event.event & ~VT_MAX_EVENT)
199 vt_event_wait(&vw);
201 if (vw.done) {
202 if (copy_to_user(event, &vw.event, sizeof(struct vt_event)))
219 struct vt_event_wait vw;
221 vw.event.event = VT_EVENT_SWITCH;
222 __vt_event_queue(&vw);
224 __vt_event_dequeue(&vw);
227 __vt_event_wait(&vw);
228 __vt_event_dequeue(&vw);
229 if (vw.done == 0)
231 } while (vw.event.newev != n);