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
Thu, Feb 27, 3:33 PM (19 h, 38 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
16870693
Default Alt Text
D30725.id90777.diff (664 B)

Event Timeline