Page MenuHomeFreeBSD

D30725.id90777.diff
No OneTemporary

D30725.id90777.diff

Index: sys/xen/xen_intr.c
===================================================================
--- sys/xen/xen_intr.c
+++ sys/xen/xen_intr.c
@@ -769,6 +769,9 @@
for (i = 0; i < nitems(s->evtchn_mask); i++)
atomic_store_rel_long(&s->evtchn_mask[i], ~0);
+ /* Protect xen_intr_port_to_isrc[] / ->xi_port */
+ mtx_lock(&xen_intr_isrc_lock);
+
/* Clear existing port mappings */
for (isrc_idx = 0; isrc_idx < NR_EVENT_CHANNELS; ++isrc_idx)
if (xen_intr_port_to_isrc[isrc_idx] != NULL)
@@ -805,6 +808,9 @@
cur = next;
} while (cur != NULL);
}
+
+ /* Done with xen_intr_port_to_isrc[] / ->xi_port */
+ mtx_unlock(&xen_intr_isrc_lock);
}
#endif

File Metadata

Mime Type
text/plain
Expires
Fri, Nov 14, 4:54 PM (10 h, 19 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
25279911
Default Alt Text
D30725.id90777.diff (664 B)

Event Timeline