Lines Matching refs:shinfo
682 bool do_unmask, struct shared_info *shinfo, in do_unmask_port_lm() argument
685 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in do_unmask_port_lm()
686 typeof(shinfo->evtchn_pending[0]) mask; in do_unmask_port_lm()
701 if (!((qatomic_fetch_and(&shinfo->evtchn_mask[idx], ~mask) & mask))) { in do_unmask_port_lm()
710 if (qatomic_fetch_or(&shinfo->evtchn_mask[idx], 0) & mask) { in do_unmask_port_lm()
716 if (!(qatomic_fetch_or(&shinfo->evtchn_pending[idx], 0) & mask)) { in do_unmask_port_lm()
740 struct compat_shared_info *shinfo, in do_unmask_port_compat() argument
743 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in do_unmask_port_compat()
744 typeof(shinfo->evtchn_pending[0]) mask; in do_unmask_port_compat()
759 if (!((qatomic_fetch_and(&shinfo->evtchn_mask[idx], ~mask) & mask))) { in do_unmask_port_compat()
768 if (qatomic_fetch_or(&shinfo->evtchn_mask[idx], 0) & mask) { in do_unmask_port_compat()
774 if (!(qatomic_fetch_or(&shinfo->evtchn_pending[idx], 0) & mask)) { in do_unmask_port_compat()
798 void *vcpu_info, *shinfo; in unmask_port() local
804 shinfo = xen_overlay_get_shinfo_ptr(); in unmask_port()
805 if (!shinfo) { in unmask_port()
815 return do_unmask_port_lm(s, port, do_unmask, shinfo, vcpu_info); in unmask_port()
817 return do_unmask_port_compat(s, port, do_unmask, shinfo, vcpu_info); in unmask_port()
822 struct shared_info *shinfo, in do_set_port_lm() argument
825 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in do_set_port_lm()
826 typeof(shinfo->evtchn_pending[0]) mask; in do_set_port_lm()
837 if (qatomic_fetch_or(&shinfo->evtchn_pending[idx], mask) & mask) { in do_set_port_lm()
842 if (qatomic_fetch_or(&shinfo->evtchn_mask[idx], 0) & mask) { in do_set_port_lm()
865 struct compat_shared_info *shinfo, in do_set_port_compat() argument
868 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in do_set_port_compat()
869 typeof(shinfo->evtchn_pending[0]) mask; in do_set_port_compat()
880 if (qatomic_fetch_or(&shinfo->evtchn_pending[idx], mask) & mask) { in do_set_port_compat()
885 if (qatomic_fetch_or(&shinfo->evtchn_mask[idx], 0) & mask) { in do_set_port_compat()
909 void *vcpu_info, *shinfo; in set_port_pending() local
931 shinfo = xen_overlay_get_shinfo_ptr(); in set_port_pending()
932 if (!shinfo) { in set_port_pending()
942 return do_set_port_lm(s, port, shinfo, vcpu_info); in set_port_pending()
944 return do_set_port_compat(s, port, shinfo, vcpu_info); in set_port_pending()
957 struct shared_info *shinfo = p; in clear_port_pending() local
958 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in clear_port_pending()
959 typeof(shinfo->evtchn_pending[0]) mask; in clear_port_pending()
965 qatomic_fetch_and(&shinfo->evtchn_pending[idx], ~mask); in clear_port_pending()
967 struct compat_shared_info *shinfo = p; in clear_port_pending() local
968 const int bits_per_word = BITS_PER_BYTE * sizeof(shinfo->evtchn_pending[0]); in clear_port_pending()
969 typeof(shinfo->evtchn_pending[0]) mask; in clear_port_pending()
975 qatomic_fetch_and(&shinfo->evtchn_pending[idx], ~mask); in clear_port_pending()
2232 void *shinfo, *pending, *mask; in qmp_xen_event_list() local
2240 shinfo = xen_overlay_get_shinfo_ptr(); in qmp_xen_event_list()
2241 if (!shinfo) { in qmp_xen_event_list()
2247 pending = shinfo + offsetof(struct shared_info, evtchn_pending); in qmp_xen_event_list()
2248 mask = shinfo + offsetof(struct shared_info, evtchn_mask); in qmp_xen_event_list()
2250 pending = shinfo + offsetof(struct compat_shared_info, evtchn_pending); in qmp_xen_event_list()
2251 mask = shinfo + offsetof(struct compat_shared_info, evtchn_mask); in qmp_xen_event_list()