Lines Matching refs:port
79 unsigned port;
93 if (this->port < evtchn->port)
95 else if (this->port > evtchn->port)
114 static struct user_evtchn *find_evtchn(struct per_user_data *u, unsigned port)
123 if (evtchn->port < port)
125 else if (evtchn->port > port)
139 "Interrupt for port %d, but apparently not enabled; per-user %p\n",
140 evtchn->port, u);
148 u->ring[EVTCHN_RING_MASK(u->ring_prod)] = evtchn->port;
221 rmb(); /* Ensure that we see the port before we copy it. */
262 unsigned port = kbuf[i];
265 evtchn = find_evtchn(u, port);
268 enable_irq(irq_from_evtchn(port));
281 static int evtchn_bind_to_user(struct per_user_data *u, int port)
289 * unique port.
301 evtchn->port = port;
308 rc = bind_evtchn_to_irqhandler(port, evtchn_interrupt, 0,
313 rc = evtchn_make_refcounted(port);
317 /* bind failed, should close the port now */
318 close.port = port;
328 int irq = irq_from_evtchn(evtchn->port);
363 rc = evtchn_bind_to_user(u, bind_virq.port);
365 rc = bind_virq.port;
405 rc = evtchn_bind_to_user(u, alloc_unbound.port);
407 rc = alloc_unbound.port;
420 if (unbind.port >= xen_evtchn_nr_channels())
424 evtchn = find_evtchn(u, unbind.port);
428 disable_irq(irq_from_evtchn(unbind.port));
443 evtchn = find_evtchn(u, notify.port);
445 notify_remote_via_evtchn(notify.port);
531 disable_irq(irq_from_evtchn(evtchn->port));