> if(up != nil && up->nlocks.ref) > print("qlock: %#p: nlocks %lud\n", getcallerpc(&q), > up->nlocks.ref); > > will no longer need the up != nil test.
that's just wrong. if the kernel is qlocking without a up, there's a bug. stack dumps are your friend. but i have a feeling that there is a mistake in your modification to qlock. you didn't have this panic before you modified qlock. - erik