Page MenuHomeFreeBSD

D12662.id33999.diff
No OneTemporary

D12662.id33999.diff

Index: sys/kern/subr_unit.c
===================================================================
--- sys/kern/subr_unit.c
+++ sys/kern/subr_unit.c
@@ -373,18 +373,17 @@
KASSERT(TAILQ_EMPTY(&uh->ppfree),
("unrhdr has postponed item for free"));
- up = TAILQ_FIRST(&uh->head);
- while (up != NULL) {
- uq = TAILQ_NEXT(up, list);
+ TAILQ_FOREACH_SAFE(up, &uh->head, list, uq) {
if (up->ptr != uh) {
Free(up->ptr);
}
Free(up);
- up = uq;
}
- TAILQ_INIT(&uh->head);
uh->busy = 0;
uh->alloc = 0;
+ init_unrhdr(uh, uh->low, uh->high, uh->mtx);
+
+ check_unrhdr(uh, __LINE__);
}
static __inline int

File Metadata

Mime Type
text/plain
Expires
Fri, Feb 20, 4:07 PM (14 h, 41 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28901166
Default Alt Text
D12662.id33999.diff (625 B)

Event Timeline