Page MenuHomeFreeBSD

D31995.1779175551.diff
No OneTemporary

Size
756 B
Referenced Files
None
Subscribers
None

D31995.1779175551.diff

Index: sys/x86/xen/xen_intr.c
===================================================================
--- sys/x86/xen/xen_intr.c
+++ sys/x86/xen/xen_intr.c
@@ -319,15 +319,15 @@
vector = first_evtchn_irq + xen_intr_auto_vector_count;
xen_intr_auto_vector_count++;
- KASSERT((intr_lookup_source(vector) == NULL),
- ("Trying to use an already allocated vector"));
-
mtx_unlock(&xen_intr_isrc_lock);
isrc = malloc(sizeof(*isrc), M_XENINTR, M_WAITOK | M_ZERO);
isrc->xi_intsrc.is_pic = &xen_intr_pic;
isrc->xi_vector = vector;
isrc->xi_type = type;
- intr_register_source(&isrc->xi_intsrc);
+ if (intr_register_source(&isrc->xi_intsrc) != 0) {
+ free(isrc, M_XENINTR);
+ return (NULL);
+ }
mtx_lock(&xen_intr_isrc_lock);
return (isrc);

File Metadata

Mime Type
text/plain
Expires
Tue, May 19, 7:25 AM (14 h, 48 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28738826
Default Alt Text
D31995.1779175551.diff (756 B)

Event Timeline