Changeset View
Changeset View
Standalone View
Standalone View
sys/kern/subr_stats.c
Show First 20 Lines • Show All 3,400 Lines • ▼ Show 20 Lines | ARB_FOREACH(ctd64, ctdth64, ctd64tree) { | ||||
ARB_PARENTIDX(ctd64, ctdlnk), | ARB_PARENTIDX(ctd64, ctdlnk), | ||||
ARB_LEFTIDX(ctd64, ctdlnk), | ARB_LEFTIDX(ctd64, ctdlnk), | ||||
ARB_RIGHTIDX(ctd64, ctdlnk), | ARB_RIGHTIDX(ctd64, ctdlnk), | ||||
ARB_COLOR(ctd64, ctdlnk), | ARB_COLOR(ctd64, ctdlnk), | ||||
qstr); | qstr); | ||||
Q_TOSTR(rbctd64->mu, -1, 10, qstr, | Q_TOSTR(rbctd64->mu, -1, 10, qstr, | ||||
sizeof(qstr)); | sizeof(qstr)); | ||||
struct voistatdata_tdgstctd64 *parent; | |||||
parent = RB_PARENT(rbctd64, rblnk); | |||||
int rb_color = | |||||
parent == NULL ? 0 : | |||||
alc: parent == NULL | |||||
RB_LEFT(parent, rblnk) == rbctd64 ? | |||||
(RB_BITS(parent, rblnk) & RB_RED_L) != 0 : | |||||
(RB_BITS(parent, rblnk) & RB_RED_R) != 0; | |||||
printf(" RB ctd=%3d p=%3d l=%3d r=%3d c=%2d " | printf(" RB ctd=%3d p=%3d l=%3d r=%3d c=%2d " | ||||
"mu=%s\n", | "mu=%s\n", | ||||
(int)ARB_SELFIDX(ctd64tree, rbctd64), | (int)ARB_SELFIDX(ctd64tree, rbctd64), | ||||
(int)ARB_SELFIDX(ctd64tree, | (int)ARB_SELFIDX(ctd64tree, | ||||
RB_PARENT(rbctd64, rblnk)), | RB_PARENT(rbctd64, rblnk)), | ||||
(int)ARB_SELFIDX(ctd64tree, | (int)ARB_SELFIDX(ctd64tree, | ||||
RB_LEFT(rbctd64, rblnk)), | RB_LEFT(rbctd64, rblnk)), | ||||
(int)ARB_SELFIDX(ctd64tree, | (int)ARB_SELFIDX(ctd64tree, | ||||
RB_RIGHT(rbctd64, rblnk)), | RB_RIGHT(rbctd64, rblnk)), | ||||
RB_COLOR(rbctd64, rblnk), | rb_color, | ||||
qstr); | qstr); | ||||
panic("RB@%p and ARB@%p trees differ\n", | panic("RB@%p and ARB@%p trees differ\n", | ||||
rbctdtree, ctd64tree); | rbctdtree, ctd64tree); | ||||
} | } | ||||
i++; | i++; | ||||
} | } | ||||
#endif /* DIAGNOSTIC */ | #endif /* DIAGNOSTIC */ | ||||
▲ Show 20 Lines • Show All 525 Lines • Show Last 20 Lines |
parent == NULL