Module Name: src
Committed By: cherry
Date: Fri Oct 26 05:33:21 UTC 2018
Modified Files:
src/sys/arch/xen/include: hypervisor.h
src/sys/arch/xen/x86: hypervisor_machdep.c xen_ipi.c
src/sys/arch/xen/xen: clock.c evtchn.c if_xennet_xenbus.c pciback.c
xbd_xenbus.c xbdback_xenbus.c xencons.c xennetback_xenbus.c
src/sys/arch/xen/xenbus: xenbus_comms.c
Log Message:
Decompose hypervisor_enable_event() into functional steps.
The hypervisor_unmask_event() step is relevant for any event.
The pirq related step is only relevant for pirq bound events.
Prune blanket usage of this, so that usage is semantically appropriate.
To generate a diff of this commit:
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/xen/include/hypervisor.h
cvs rdiff -u -r1.28 -r1.29 src/sys/arch/xen/x86/hypervisor_machdep.c
cvs rdiff -u -r1.27 -r1.28 src/sys/arch/xen/x86/xen_ipi.c
cvs rdiff -u -r1.71 -r1.72 src/sys/arch/xen/xen/clock.c
cvs rdiff -u -r1.81 -r1.82 src/sys/arch/xen/xen/evtchn.c
cvs rdiff -u -r1.80 -r1.81 src/sys/arch/xen/xen/if_xennet_xenbus.c
cvs rdiff -u -r1.16 -r1.17 src/sys/arch/xen/xen/pciback.c
cvs rdiff -u -r1.89 -r1.90 src/sys/arch/xen/xen/xbd_xenbus.c
cvs rdiff -u -r1.68 -r1.69 src/sys/arch/xen/xen/xbdback_xenbus.c
cvs rdiff -u -r1.45 -r1.46 src/sys/arch/xen/xen/xencons.c
cvs rdiff -u -r1.70 -r1.71 src/sys/arch/xen/xen/xennetback_xenbus.c
cvs rdiff -u -r1.19 -r1.20 src/sys/arch/xen/xenbus/xenbus_comms.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/arch/xen/include/hypervisor.h
diff -u src/sys/arch/xen/include/hypervisor.h:1.45 src/sys/arch/xen/include/hypervisor.h:1.46
--- src/sys/arch/xen/include/hypervisor.h:1.45 Sun Sep 23 02:27:24 2018
+++ src/sys/arch/xen/include/hypervisor.h Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: hypervisor.h,v 1.45 2018/09/23 02:27:24 cherry Exp $ */
+/* $NetBSD: hypervisor.h,v 1.46 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -55,7 +55,8 @@
#define _XEN_HYPERVISOR_H_
#include "opt_xen.h"
-
+#include "isa.h"
+#include "pci.h"
struct hypervisor_attach_args {
const char *haa_busname;
@@ -130,8 +131,10 @@ extern volatile shared_info_t *HYPERVISO
struct intrframe;
struct cpu_info;
void do_hypervisor_callback(struct intrframe *regs);
+#if NPCI > 0 || NISA > 0
void hypervisor_prime_pirq_event(int, unsigned int);
-void hypervisor_enable_event(unsigned int);
+void hypervisor_ack_pirq_event(unsigned int);
+#endif /* NPCI > 0 || NISA > 0 */
extern int xen_version;
#define XEN_MAJOR(x) (((x) & 0xffff0000) >> 16)
Index: src/sys/arch/xen/x86/hypervisor_machdep.c
diff -u src/sys/arch/xen/x86/hypervisor_machdep.c:1.28 src/sys/arch/xen/x86/hypervisor_machdep.c:1.29
--- src/sys/arch/xen/x86/hypervisor_machdep.c:1.28 Sun Sep 21 12:46:15 2014
+++ src/sys/arch/xen/x86/hypervisor_machdep.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: hypervisor_machdep.c,v 1.28 2014/09/21 12:46:15 bouyer Exp $ */
+/* $NetBSD: hypervisor_machdep.c,v 1.29 2018/10/26 05:33:21 cherry Exp $ */
/*
*
@@ -54,7 +54,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: hypervisor_machdep.c,v 1.28 2014/09/21 12:46:15 bouyer Exp $");
+__KERNEL_RCSID(0, "$NetBSD: hypervisor_machdep.c,v 1.29 2018/10/26 05:33:21 cherry Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -71,6 +71,8 @@ __KERNEL_RCSID(0, "$NetBSD: hypervisor_m
#include <xen/xenpmap.h>
#include "opt_xen.h"
+#include "isa.h"
+#include "pci.h"
/*
* arch-dependent p2m frame lists list (L3 and L2)
@@ -392,7 +394,10 @@ evt_enable_event(unsigned int port, unsi
unsigned int l2i, void *args)
{
KASSERT(args == NULL);
- hypervisor_enable_event(port);
+ hypervisor_unmask_event(port);
+#if NPCI > 0 || NISA > 0
+ hypervisor_ack_pirq_event(port);
+#endif /* NPCI > 0 || NISA > 0 */
}
void
Index: src/sys/arch/xen/x86/xen_ipi.c
diff -u src/sys/arch/xen/x86/xen_ipi.c:1.27 src/sys/arch/xen/x86/xen_ipi.c:1.28
--- src/sys/arch/xen/x86/xen_ipi.c:1.27 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/x86/xen_ipi.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xen_ipi.c,v 1.27 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: xen_ipi.c,v 1.28 2018/10/26 05:33:21 cherry Exp $ */
/*-
* Copyright (c) 2011 The NetBSD Foundation, Inc.
@@ -33,10 +33,10 @@
/*
* Based on: x86/ipi.c
- * __KERNEL_RCSID(0, "$NetBSD: xen_ipi.c,v 1.27 2018/10/24 03:59:33 cherry Exp $");
+ * __KERNEL_RCSID(0, "$NetBSD: xen_ipi.c,v 1.28 2018/10/26 05:33:21 cherry Exp $");
*/
-__KERNEL_RCSID(0, "$NetBSD: xen_ipi.c,v 1.27 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xen_ipi.c,v 1.28 2018/10/26 05:33:21 cherry Exp $");
#include "opt_ddb.h"
@@ -143,7 +143,7 @@ xen_ipi_init(void)
/* NOTREACHED */
}
- hypervisor_enable_event(evtchn);
+ hypervisor_unmask_event(evtchn);
}
#ifdef DIAGNOSTIC
Index: src/sys/arch/xen/xen/clock.c
diff -u src/sys/arch/xen/xen/clock.c:1.71 src/sys/arch/xen/xen/clock.c:1.72
--- src/sys/arch/xen/xen/clock.c:1.71 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/clock.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: clock.c,v 1.71 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: clock.c,v 1.72 2018/10/26 05:33:21 cherry Exp $ */
/*-
* Copyright (c) 2017, 2018 The NetBSD Foundation, Inc.
@@ -36,7 +36,7 @@
#endif
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: clock.c,v 1.71 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: clock.c,v 1.72 2018/10/26 05:33:21 cherry Exp $");
#include <sys/param.h>
#include <sys/types.h>
@@ -769,7 +769,7 @@ xen_resumeclocks(struct cpu_info *ci)
if (ci->ci_xen_timer_intrhand == NULL)
panic("failed to establish timer interrupt handler");
- hypervisor_enable_event(evtch);
+ hypervisor_unmask_event(evtch);
aprint_verbose("Xen %s: using event channel %d\n", intr_xname, evtch);
Index: src/sys/arch/xen/xen/evtchn.c
diff -u src/sys/arch/xen/xen/evtchn.c:1.81 src/sys/arch/xen/xen/evtchn.c:1.82
--- src/sys/arch/xen/xen/evtchn.c:1.81 Sun Sep 23 02:27:24 2018
+++ src/sys/arch/xen/xen/evtchn.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: evtchn.c,v 1.81 2018/09/23 02:27:24 cherry Exp $ */
+/* $NetBSD: evtchn.c,v 1.82 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -54,7 +54,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: evtchn.c,v 1.81 2018/09/23 02:27:24 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: evtchn.c,v 1.82 2018/10/26 05:33:21 cherry Exp $");
#include "opt_xen.h"
#include "isa.h"
@@ -269,8 +269,10 @@ events_init(void)
*/
evtsource[debug_port] = (void *)-1;
xen_atomic_set_bit(&curcpu()->ci_evtmask[0], debug_port);
- hypervisor_enable_event(debug_port);
-
+ hypervisor_unmask_event(debug_port);
+#if NPCI > 0 || NISA > 0
+ hypervisor_ack_pirq_event(debug_port);
+#endif /* NPCI > 0 || NISA > 0 */
x86_enable_intr(); /* at long last... */
}
@@ -331,7 +333,10 @@ evtchn_do_event(int evtch, struct intrfr
*/
if (__predict_false(evtch == debug_port)) {
xen_debug_handler(NULL);
- hypervisor_enable_event(evtch);
+ hypervisor_unmask_event(debug_port);
+#if NPCI > 0 || NISA > 0
+ hypervisor_ack_pirq_event(debug_port);
+#endif /* NPCI > 0 || NISA > 0 */
return 0;
}
@@ -391,7 +396,11 @@ evtchn_do_event(int evtch, struct intrfr
}
mutex_spin_exit(&evtlock[evtch]);
cli();
- hypervisor_enable_event(evtch);
+ hypervisor_unmask_event(evtch);
+#if NPCI > 0 || NISA > 0
+ hypervisor_ack_pirq_event(evtch);
+#endif /* NPCI > 0 || NISA > 0 */
+
splx:
/*
* C version of spllower(). ASTs will be checked when
@@ -759,7 +768,8 @@ pirq_establish(int pirq, int evtch, int
}
hypervisor_prime_pirq_event(pirq, evtch);
- hypervisor_enable_event(evtch);
+ hypervisor_unmask_event(evtch);
+ hypervisor_ack_pirq_event(evtch);
return ih;
}
@@ -994,10 +1004,10 @@ event_remove_handler(int evtch, int (*fu
return 0;
}
+#if NPCI > 0 || NISA > 0
void
hypervisor_prime_pirq_event(int pirq, unsigned int evtch)
{
-#if NPCI > 0 || NISA > 0
physdev_op_t physdev_op;
physdev_op.cmd = PHYSDEVOP_IRQ_STATUS_QUERY;
physdev_op.u.irq_status_query.irq = pirq;
@@ -1010,19 +1020,16 @@ hypervisor_prime_pirq_event(int pirq, un
printf("pirq %d needs notify\n", pirq);
#endif
}
-#endif /* NPCI > 0 || NISA > 0 */
}
void
-hypervisor_enable_event(unsigned int evtch)
+hypervisor_ack_pirq_event(unsigned int evtch)
{
#ifdef IRQ_DEBUG
if (evtch == IRQ_DEBUG)
- printf("hypervisor_enable_evtch: evtch %d\n", evtch);
+ printf("%s: evtch %d\n", __func__, evtch);
#endif
- hypervisor_unmask_event(evtch);
-#if NPCI > 0 || NISA > 0
if (pirq_needs_unmask_notify[evtch >> 5] & (1 << (evtch & 0x1f))) {
#ifdef IRQ_DEBUG
if (evtch == IRQ_DEBUG)
@@ -1030,8 +1037,8 @@ hypervisor_enable_event(unsigned int evt
#endif
(void)HYPERVISOR_physdev_op(&physdev_op_notify);
}
-#endif /* NPCI > 0 || NISA > 0 */
}
+#endif /* NPCI > 0 || NISA > 0 */
int
xen_debug_handler(void *arg)
Index: src/sys/arch/xen/xen/if_xennet_xenbus.c
diff -u src/sys/arch/xen/xen/if_xennet_xenbus.c:1.80 src/sys/arch/xen/xen/if_xennet_xenbus.c:1.81
--- src/sys/arch/xen/xen/if_xennet_xenbus.c:1.80 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/if_xennet_xenbus.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: if_xennet_xenbus.c,v 1.80 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: if_xennet_xenbus.c,v 1.81 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -84,7 +84,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_xennet_xenbus.c,v 1.80 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_xennet_xenbus.c,v 1.81 2018/10/26 05:33:21 cherry Exp $");
#include "opt_xen.h"
#include "opt_nfs_boot.h"
@@ -1386,7 +1386,7 @@ xennet_init(struct ifnet *ifp)
if ((ifp->if_flags & IFF_RUNNING) == 0) {
sc->sc_rx_ring.sring->rsp_event =
sc->sc_rx_ring.rsp_cons + 1;
- hypervisor_enable_event(sc->sc_evtchn);
+ hypervisor_unmask_event(sc->sc_evtchn);
hypervisor_notify_via_evtchn(sc->sc_evtchn);
xennet_reset(sc);
}
Index: src/sys/arch/xen/xen/pciback.c
diff -u src/sys/arch/xen/xen/pciback.c:1.16 src/sys/arch/xen/xen/pciback.c:1.17
--- src/sys/arch/xen/xen/pciback.c:1.16 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/pciback.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: pciback.c,v 1.16 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: pciback.c,v 1.17 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2009 Manuel Bouyer.
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: pciback.c,v 1.16 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: pciback.c,v 1.17 2018/10/26 05:33:21 cherry Exp $");
#include "opt_xen.h"
@@ -622,7 +622,7 @@ pciback_xenbus_frontend_changed(void *ar
pbxi->pbx_ih = intr_establish_xname(-1, &xen_pic, pbxi->pbx_evtchn, IST_LEVEL, IPL_BIO,
pciback_xenbus_evthandler, pbxi, true, "pciback");
KASSERT(pbxi->pbx_ih != NULL);
- hypervisor_enable_event(pbxi->pbx_evtchn);
+ hypervisor_unmask_event(pbxi->pbx_evtchn);
hypervisor_notify_via_evtchn(pbxi->pbx_evtchn);
break;
Index: src/sys/arch/xen/xen/xbd_xenbus.c
diff -u src/sys/arch/xen/xen/xbd_xenbus.c:1.89 src/sys/arch/xen/xen/xbd_xenbus.c:1.90
--- src/sys/arch/xen/xen/xbd_xenbus.c:1.89 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/xbd_xenbus.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xbd_xenbus.c,v 1.89 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: xbd_xenbus.c,v 1.90 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -50,7 +50,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xbd_xenbus.c,v 1.89 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xbd_xenbus.c,v 1.90 2018/10/26 05:33:21 cherry Exp $");
#include "opt_xen.h"
@@ -509,7 +509,7 @@ again:
*/
sc->sc_backend_status = BLKIF_STATE_CONNECTED;
xenbus_device_resume(sc->sc_xbusd);
- hypervisor_enable_event(sc->sc_evtchn);
+ hypervisor_unmask_event(sc->sc_evtchn);
xenbus_switch_state(sc->sc_xbusd, NULL, XenbusStateConnected);
}
@@ -568,8 +568,7 @@ xbd_backend_changed(void *arg, XenbusSta
xbd_connect(sc);
sc->sc_shutdown = BLKIF_SHUTDOWN_RUN;
- hypervisor_enable_event(sc->sc_evtchn);
-
+ hypervisor_unmask_event(sc->sc_evtchn);
sc->sc_xbdsize =
sc->sc_sectors * (uint64_t)sc->sc_secsize / DEV_BSIZE;
dg = &sc->sc_dksc.sc_dkdev.dk_geom;
Index: src/sys/arch/xen/xen/xbdback_xenbus.c
diff -u src/sys/arch/xen/xen/xbdback_xenbus.c:1.68 src/sys/arch/xen/xen/xbdback_xenbus.c:1.69
--- src/sys/arch/xen/xen/xbdback_xenbus.c:1.68 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/xbdback_xenbus.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xbdback_xenbus.c,v 1.68 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: xbdback_xenbus.c,v 1.69 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -26,7 +26,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xbdback_xenbus.c,v 1.68 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xbdback_xenbus.c,v 1.69 2018/10/26 05:33:21 cherry Exp $");
#include <sys/atomic.h>
#include <sys/buf.h>
@@ -654,7 +654,7 @@ xbdback_connect(struct xbdback_instance
/* enable the xbdback event handler machinery */
xbdi->xbdi_status = WAITING;
- hypervisor_enable_event(xbdi->xbdi_evtchn);
+ hypervisor_unmask_event(xbdi->xbdi_evtchn);
hypervisor_notify_via_evtchn(xbdi->xbdi_evtchn);
if (kthread_create(PRI_NONE, KTHREAD_MPSAFE, NULL,
Index: src/sys/arch/xen/xen/xencons.c
diff -u src/sys/arch/xen/xen/xencons.c:1.45 src/sys/arch/xen/xen/xencons.c:1.46
--- src/sys/arch/xen/xen/xencons.c:1.45 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/xencons.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xencons.c,v 1.45 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: xencons.c,v 1.46 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -53,7 +53,7 @@
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xencons.c,v 1.45 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xencons.c,v 1.46 2018/10/26 05:33:21 cherry Exp $");
#include "opt_xen.h"
@@ -249,7 +249,7 @@ xencons_resume(device_t dev, const pmf_q
if (evtch != -1) {
aprint_verbose_dev(dev, "using event channel %d\n", evtch);
- hypervisor_enable_event(evtch);
+ hypervisor_unmask_event(evtch);
}
return true;
Index: src/sys/arch/xen/xen/xennetback_xenbus.c
diff -u src/sys/arch/xen/xen/xennetback_xenbus.c:1.70 src/sys/arch/xen/xen/xennetback_xenbus.c:1.71
--- src/sys/arch/xen/xen/xennetback_xenbus.c:1.70 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xen/xennetback_xenbus.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xennetback_xenbus.c,v 1.70 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: xennetback_xenbus.c,v 1.71 2018/10/26 05:33:21 cherry Exp $ */
/*
* Copyright (c) 2006 Manuel Bouyer.
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xennetback_xenbus.c,v 1.70 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xennetback_xenbus.c,v 1.71 2018/10/26 05:33:21 cherry Exp $");
#include "opt_xen.h"
@@ -561,7 +561,7 @@ xennetback_connect(struct xnetback_insta
xneti->xni_if.if_xname);
KASSERT(xneti->xni_ih != NULL);
xennetback_ifinit(&xneti->xni_if);
- hypervisor_enable_event(xneti->xni_evtchn);
+ hypervisor_unmask_event(xneti->xni_evtchn);
hypervisor_notify_via_evtchn(xneti->xni_evtchn);
return 0;
Index: src/sys/arch/xen/xenbus/xenbus_comms.c
diff -u src/sys/arch/xen/xenbus/xenbus_comms.c:1.19 src/sys/arch/xen/xenbus/xenbus_comms.c:1.20
--- src/sys/arch/xen/xenbus/xenbus_comms.c:1.19 Wed Oct 24 03:59:33 2018
+++ src/sys/arch/xen/xenbus/xenbus_comms.c Fri Oct 26 05:33:21 2018
@@ -1,4 +1,4 @@
-/* $NetBSD: xenbus_comms.c,v 1.19 2018/10/24 03:59:33 cherry Exp $ */
+/* $NetBSD: xenbus_comms.c,v 1.20 2018/10/26 05:33:21 cherry Exp $ */
/******************************************************************************
* xenbus_comms.c
*
@@ -29,7 +29,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: xenbus_comms.c,v 1.19 2018/10/24 03:59:33 cherry Exp $");
+__KERNEL_RCSID(0, "$NetBSD: xenbus_comms.c,v 1.20 2018/10/26 05:33:21 cherry Exp $");
#include <sys/types.h>
#include <sys/null.h>
@@ -224,7 +224,7 @@ xb_init_comms(device_t dev)
ih = intr_establish_xname(-1, &xen_pic, evtchn, IST_LEVEL, IPL_TTY,
wake_waiting, NULL, false, device_xname(dev));
- hypervisor_enable_event(evtchn);
+ hypervisor_unmask_event(evtchn);
aprint_verbose_dev(dev, "using event channel %d\n", evtchn);
return 0;