/xen/xen/include/xen/ |
A D | event.h | 114 static inline void evtchn_read_lock(struct evtchn *evtchn) in evtchn_read_lock() argument 119 static inline bool evtchn_read_trylock(struct evtchn *evtchn) in evtchn_read_trylock() argument 124 static inline void evtchn_read_unlock(struct evtchn *evtchn) in evtchn_read_unlock() argument 155 static bool evtchn_usable(const struct evtchn *evtchn) in evtchn_usable() argument 208 void (*init)(struct domain *d, struct evtchn *evtchn); 209 void (*set_pending)(struct vcpu *v, struct evtchn *evtchn); 211 void (*unmask)(struct domain *d, struct evtchn *evtchn); 246 struct evtchn *evtchn) in evtchn_port_unmask() argument 260 struct evtchn *evtchn = evtchn_from_port(d, port); in evtchn_port_is_pending() local 278 struct evtchn *evtchn = evtchn_from_port(d, port); in evtchn_port_is_masked() local [all …]
|
A D | irq.h | 131 evtchn_port_t evtchn; member 148 #define pirq_to_evtchn(d, pirq) pirq_field(d, pirq, evtchn, 0) 154 ((pirq)->evtchn ? pirq_cleanup_check(pirq, d) : (void)0)
|
A D | sched.h | 67 #define BUCKETS_PER_GROUP (PAGE_SIZE/sizeof(struct evtchn *)) 79 #define EVTCHNS_PER_BUCKET (PAGE_SIZE / next_power_of_2(sizeof(struct evtchn))) 86 struct evtchn struct 362 struct evtchn *evtchn; /* first bucket only */ member 363 struct evtchn **evtchn_group[NR_EVTCHN_GROUPS]; /* all other buckets */
|
/xen/xen/common/ |
A D | event_2l.c | 18 static void evtchn_2l_set_pending(struct vcpu *v, struct evtchn *evtchn) in evtchn_2l_set_pending() argument 21 unsigned int port = evtchn->port; in evtchn_2l_set_pending() 43 static void evtchn_2l_clear_pending(struct domain *d, struct evtchn *evtchn) in evtchn_2l_clear_pending() argument 48 static void evtchn_2l_unmask(struct domain *d, struct evtchn *evtchn) in evtchn_2l_unmask() argument 50 struct vcpu *v = d->vcpu[evtchn->notify_vcpu_id]; in evtchn_2l_unmask() 51 unsigned int port = evtchn->port; in evtchn_2l_unmask() 67 const struct evtchn *evtchn) in evtchn_2l_is_pending() argument 69 evtchn_port_t port = evtchn->port; in evtchn_2l_is_pending() 78 const struct evtchn *evtchn) in evtchn_2l_is_masked() argument 80 evtchn_port_t port = evtchn->port; in evtchn_2l_is_masked() [all …]
|
A D | event_fifo.c | 60 static void evtchn_fifo_init(struct domain *d, struct evtchn *evtchn) in evtchn_fifo_init() argument 140 static void evtchn_fifo_set_pending(struct vcpu *v, struct evtchn *evtchn) in evtchn_fifo_set_pending() argument 151 port = evtchn->port; in evtchn_fifo_set_pending() 319 static void evtchn_fifo_unmask(struct domain *d, struct evtchn *evtchn) in evtchn_fifo_unmask() argument 336 const struct evtchn *evtchn) in evtchn_fifo_is_pending() argument 344 const struct evtchn *evtchn) in evtchn_fifo_is_masked() argument 352 const struct evtchn *evtchn) in evtchn_fifo_is_busy() argument 359 static int evtchn_fifo_set_priority(struct domain *d, struct evtchn *evtchn, in evtchn_fifo_set_priority() argument 376 const struct evtchn *evtchn) in evtchn_fifo_print_state() argument 538 struct evtchn *evtchn; in setup_ports() local [all …]
|
A D | event_channel.c | 60 static inline void evtchn_write_lock(struct evtchn *evtchn) in evtchn_write_lock() argument 65 evtchn->old_state = evtchn->state; in evtchn_write_lock() 69 static inline unsigned int old_state(const struct evtchn *evtchn) in old_state() argument 78 static inline void evtchn_write_unlock(struct evtchn *evtchn) in evtchn_write_unlock() argument 81 ASSERT(old_state(evtchn) == ECS_FREE || old_state(evtchn) == ECS_UNBOUND || in evtchn_write_unlock() 82 evtchn->state == ECS_FREE || evtchn->state == ECS_UNBOUND); in evtchn_write_unlock() 151 struct evtchn *chn; in alloc_evtchn_bucket() 281 struct evtchn *chn; in evtchn_alloc_unbound() 321 static void double_evtchn_lock(struct evtchn *lchn, struct evtchn *rchn) in double_evtchn_lock() 336 static void double_evtchn_unlock(struct evtchn *lchn, struct evtchn *rchn) in double_evtchn_unlock() [all …]
|
/xen/tools/libs/evtchn/ |
A D | minios.c | 55 LIST_INSERT_HEAD(&files[fd].evtchn.ports, port_info, list); in port_alloc() 71 LIST_INIT(&files[fd].evtchn.ports); in osdep_evtchn_open() 94 LIST_FOREACH_SAFE(port_info, &files[fd].evtchn.ports, list, tmp) in minios_evtchn_close_fd() 124 LIST_FOREACH(port_info, &files[fd].evtchn.ports, list) { in evtchn_handler() 197 LIST_FOREACH(port_info, &files[fd].evtchn.ports, list) { in xenevtchn_unbind() 244 LIST_FOREACH(port_info, &files[fd].evtchn.ports, list) { in xenevtchn_pending()
|
A D | Makefile | 6 LIBNAME := evtchn
|
/xen/xen/include/xsm/ |
A D | xsm.h | 58 int (*evtchn_unbound) (struct domain *d, struct evtchn *chn, domid_t id2); 59 int (*evtchn_interdomain) (struct domain *d1, struct evtchn *chn1, 61 void (*evtchn_close_post) (struct evtchn *chn); 62 int (*evtchn_send) (struct domain *d, struct evtchn *chn); 63 int (*evtchn_status) (struct domain *d, struct evtchn *chn); 75 int (*alloc_security_evtchn) (struct evtchn *chn); 76 void (*free_security_evtchn) (struct evtchn *chn); 252 struct evtchn *chan1, struct domain *d2, struct evtchn *chan2) in xsm_evtchn_interdomain() 257 static inline void xsm_evtchn_close_post (struct evtchn *chn) in xsm_evtchn_close_post() 318 static inline int xsm_alloc_security_evtchn (struct evtchn *chn) in xsm_alloc_security_evtchn() [all …]
|
A D | dummy.h | 275 static XSM_INLINE int xsm_evtchn_unbound(XSM_DEFAULT_ARG struct domain *d, struct evtchn *chn, in xsm_evtchn_unbound() 282 static XSM_INLINE int xsm_evtchn_interdomain(XSM_DEFAULT_ARG struct domain *d1, struct evtchn in xsm_evtchn_interdomain() 283 *chan1, struct domain *d2, struct evtchn *chan2) in xsm_evtchn_interdomain() 289 static XSM_INLINE void xsm_evtchn_close_post(struct evtchn *chn) in xsm_evtchn_close_post() 294 static XSM_INLINE int xsm_evtchn_send(XSM_DEFAULT_ARG struct domain *d, struct evtchn *chn) in xsm_evtchn_send() 300 static XSM_INLINE int xsm_evtchn_status(XSM_DEFAULT_ARG struct domain *d, struct evtchn *chn) in xsm_evtchn_status() 312 static XSM_INLINE int xsm_alloc_security_evtchn(struct evtchn *chn) in xsm_alloc_security_evtchn() 317 static XSM_INLINE void xsm_free_security_evtchn(struct evtchn *chn) in xsm_free_security_evtchn() 322 static XSM_INLINE char *xsm_show_security_evtchn(struct domain *d, const struct evtchn *chn) in xsm_show_security_evtchn()
|
/xen/xen/xsm/ |
A D | silo.c | 36 static int silo_evtchn_unbound(struct domain *d1, struct evtchn *chn, in silo_evtchn_unbound() 54 static int silo_evtchn_interdomain(struct domain *d1, struct evtchn *chan1, in silo_evtchn_interdomain() 55 struct domain *d2, struct evtchn *chan2) in silo_evtchn_interdomain()
|
/xen/xen/arch/x86/guest/xen/ |
A D | xen.c | 184 unsigned long evtchn = xchg(&XEN_shared_info->evtchn_pending[l1], 0); in xen_evtchn_upcall() local 187 evtchn &= ~XEN_shared_info->evtchn_mask[l1]; in xen_evtchn_upcall() 188 while ( evtchn ) in xen_evtchn_upcall() 190 unsigned int port = find_first_set_bit(evtchn); in xen_evtchn_upcall() 192 __clear_bit(port, &evtchn); in xen_evtchn_upcall()
|
/xen/xen/include/asm-arm/ |
A D | vpl011.h | 57 evtchn_port_t evtchn; member 63 evtchn_port_t evtchn; member
|
/xen/xen/include/public/io/ |
A D | pvcalls.h | 79 uint32_t evtchn; member 101 uint32_t evtchn; member
|
/xen/tools/misc/ |
A D | xen-hptool.c | 102 int *evtchn, int *lockfd) in suspend_guest() argument 108 if (!evtchn) in suspend_guest() 124 *evtchn = suspend_evtchn; in suspend_guest()
|
/xen/tools/libs/ |
A D | Makefile | 7 SUBDIRS-y += evtchn
|
/xen/xen/arch/arm/ |
A D | vpl011.c | 257 notify_via_xen_event_channel(d, vpl011->evtchn); in vpl011_read_data() 341 notify_via_xen_event_channel(d, vpl011->evtchn); in vpl011_write_data() 650 vpl011->evtchn = info->evtchn = rc; in domain_vpl011_init() 703 free_xen_event_channel(d, vpl011->evtchn); in domain_vpl011_deinit()
|
A D | domctl.c | 43 vuart_op->evtchn = info.evtchn; in handle_vuart_init()
|
/xen/docs/misc/ |
A D | pvcalls.pandoc | 257 uint32_t evtchn; 279 uint32_t evtchn; 432 **evtchn** and **ref**. **evtchn** is the port number of a new event 446 - bind the **evtchn** 463 - **evtchn**: port number of the evtchn to signal activity on the **data ring** 471 | len | flags | ref |evtchn | 639 **evtchn** and **ref**. **evtchn** is the port number of a new event 662 - backend binds to the **evtchn** 672 - **evtchn**: port number of the evtchn to signal activity on the data ring 1052 - notify the other end via evtchn [all …]
|
/xen/xen/xsm/flask/ |
A D | hooks.c | 58 static u32 evtchn_sid(const struct evtchn *chn) in evtchn_sid() 91 static int domain_has_evtchn(struct domain *d, struct evtchn *chn, u32 perms) in domain_has_evtchn() 199 static int flask_evtchn_unbound(struct domain *d1, struct evtchn *chn, in flask_evtchn_unbound() 232 static int flask_evtchn_interdomain(struct domain *d1, struct evtchn *chn1, in flask_evtchn_interdomain() 233 struct domain *d2, struct evtchn *chn2) in flask_evtchn_interdomain() 275 static void flask_evtchn_close_post(struct evtchn *chn) in flask_evtchn_close_post() 280 static int flask_evtchn_send(struct domain *d, struct evtchn *chn) in flask_evtchn_send() 300 static int flask_evtchn_status(struct domain *d, struct evtchn *chn) in flask_evtchn_status() 310 static int flask_alloc_security_evtchn(struct evtchn *chn) in flask_alloc_security_evtchn() 317 static void flask_free_security_evtchn(struct evtchn *chn) in flask_free_security_evtchn() [all …]
|
A D | flask_op.c | 555 struct evtchn *chn; in flask_get_peer_sid() 560 if ( !port_is_valid(d, arg->evtchn) ) in flask_get_peer_sid() 563 chn = evtchn_from_port(d, arg->evtchn); in flask_get_peer_sid()
|
/xen/stubdom/ |
A D | Makefile | 339 libs-$(XEN_TARGET_ARCH)/evtchn/stamp: $(XEN_ROOT)/tools/libs/evtchn/Makefile 360 LINK_LIBS_DIRS := toolcore toollog evtchn gnttab call foreignmemory devicemodel 407 libxenevtchn: libs-$(XEN_TARGET_ARCH)/evtchn/libxenevtchn.a 408 libs-$(XEN_TARGET_ARCH)/evtchn/libxenevtchn.a: mk-headers-$(XEN_TARGET_ARCH) $(NEWLIB_STAMPFILE) 409 …S="$(TARGET_CPPFLAGS)" CFLAGS="$(TARGET_CFLAGS)" $(MAKE) DESTDIR= -C libs-$(XEN_TARGET_ARCH)/evtchn 679 …[ ! -e libs-$(XEN_TARGET_ARCH)/evtchn/Makefile ] || $(MAKE) DESTDIR= -C libs-$(XEN_TARGET_ARCH)/ev…
|
/xen/xen/include/public/ |
A D | xen.h | 856 uint32_t evtchn; /* Event channel for console page. */ member 882 #define console_evtchn console.domU.evtchn
|
/xen/xen/include/public/xsm/ |
A D | flask_op.h | 144 evtchn_port_t evtchn; member
|
/xen/stubdom/grub/ |
A D | kexec.c | 168 rv = evtchn_get_peercontext(tpm->evtchn, ctx, sizeof(ctx) - 1); in tpm_hash2pcr() 242 dom->console_evtchn = start_info.console.domU.evtchn; in kexec()
|