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