diff options
author | Mike Belopuhov <mikeb@cvs.openbsd.org> | 2015-12-21 19:43:17 +0000 |
---|---|---|
committer | Mike Belopuhov <mikeb@cvs.openbsd.org> | 2015-12-21 19:43:17 +0000 |
commit | fa3193065f4edb9d25cf3586a7b49d4239154b26 (patch) | |
tree | 96adc5bfd3c7f2500e75e656998abd359eee4ca2 /sys/dev/pv/xenvar.h | |
parent | b77074dbe6077d3fbaf56489757cdb6f8c3ce4b2 (diff) |
Introduce xen_intr_mask and xen_intr_unmask primitives
Mask the event port during xen_intr_establish, but don't set the
masked flag in the intsrc. By providing mask and unmask routines
we allow the device to decide when to perform these actions. The
port will still be unmasked during xen_intr_enable. This allows
netfront to fulfil the intr_barrier pattern requirements fairly
easily and at the same time should be sufficient for diskfront
that doesn't need to fiddle with interrupt masking.
Diffstat (limited to 'sys/dev/pv/xenvar.h')
-rw-r--r-- | sys/dev/pv/xenvar.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/dev/pv/xenvar.h b/sys/dev/pv/xenvar.h index 4d306ba68f4..6b0c136c58f 100644 --- a/sys/dev/pv/xenvar.h +++ b/sys/dev/pv/xenvar.h @@ -1,4 +1,4 @@ -/* $OpenBSD: xenvar.h,v 1.14 2015/12/21 18:17:36 mikeb Exp $ */ +/* $OpenBSD: xenvar.h,v 1.15 2015/12/21 19:43:16 mikeb Exp $ */ /* * Copyright (c) 2015 Mike Belopuhov @@ -90,6 +90,8 @@ int xen_intr_establish(evtchn_port_t, xen_intr_handle_t *, void (*)(void *), void *, char *); int xen_intr_disestablish(xen_intr_handle_t); void xen_intr_enable(void); +void xen_intr_mask(xen_intr_handle_t); +int xen_intr_unmask(xen_intr_handle_t); /* * XenStore |