Page MenuHomeFreeBSD

D22703.id81443.diff
No OneTemporary

D22703.id81443.diff

diff --git a/sys/vm/uma_core.c b/sys/vm/uma_core.c
--- a/sys/vm/uma_core.c
+++ b/sys/vm/uma_core.c
@@ -5392,10 +5392,10 @@
keg = zone->uz_keg;
freei = slab_item_index(slab, keg, item);
- if (BIT_ISSET(keg->uk_ipers, freei, slab_dbg_bits(slab, keg)))
+ if (BIT_TEST_SET_ATOMIC(keg->uk_ipers, freei,
+ slab_dbg_bits(slab, keg)))
panic("Duplicate alloc of %p from zone %p(%s) slab %p(%d)",
item, zone, zone->uz_name, slab, freei);
- BIT_SET_ATOMIC(keg->uk_ipers, freei, slab_dbg_bits(slab, keg));
}
/*
@@ -5426,11 +5426,10 @@
panic("Unaligned free of %p from zone %p(%s) slab %p(%d)",
item, zone, zone->uz_name, slab, freei);
- if (!BIT_ISSET(keg->uk_ipers, freei, slab_dbg_bits(slab, keg)))
+ if (!BIT_TEST_CLR_ATOMIC(keg->uk_ipers, freei,
+ slab_dbg_bits(slab, keg)))
panic("Duplicate free of %p from zone %p(%s) slab %p(%d)",
item, zone, zone->uz_name, slab, freei);
-
- BIT_CLR_ATOMIC(keg->uk_ipers, freei, slab_dbg_bits(slab, keg));
}
#endif /* INVARIANTS */

File Metadata

Mime Type
text/plain
Expires
Sat, Apr 18, 11:54 PM (8 h, 9 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31738793
Default Alt Text
D22703.id81443.diff (1016 B)

Event Timeline