View | Details | Raw Unified | Return to bug 238212
Collapse All | Expand All

(-)b/sys/kern/subr_witness.c (-1 / +2 lines)
Lines 1228-1234 witness_checkorder(struct lock_object *lock, int flags, const char *file, Link Here
1228
	 */
1228
	 */
1229
	if (w1 == w) {
1229
	if (w1 == w) {
1230
		i = w->w_index;
1230
		i = w->w_index;
1231
		if (!(lock->lo_flags & LO_DUPOK) && !(flags & LOP_DUPOK) &&
1231
		if (!(w->w_class->lc_flags & LC_RECURSABLE) &&
1232
			!(lock->lo_flags & LO_DUPOK) && !(flags & LOP_DUPOK) &&
1232
		    !(w_rmatrix[i][i] & WITNESS_REVERSAL)) {
1233
		    !(w_rmatrix[i][i] & WITNESS_REVERSAL)) {
1233
		    w_rmatrix[i][i] |= WITNESS_REVERSAL;
1234
		    w_rmatrix[i][i] |= WITNESS_REVERSAL;
1234
			w->w_reversed = 1;
1235
			w->w_reversed = 1;

Return to bug 238212