LKC_XMASK
(count & (LKC_SMASK | LKC_XMASK)) == 0) {
if (count & LKC_XMASK) {
if (count & LKC_XMASK) {
if (count & (LKC_XMASK | LKC_SMASK | LKC_EXREQ | LKC_UPREQ)) {
if (count & LKC_XMASK) {
if ((count & LKC_XMASK) && lkp->lk_lockholder == td) {
KKASSERT(lkp->lk_count & LKC_XMASK);
if (count & LKC_XMASK)
if (count & LKC_XMASK) {
((count & LKC_XMASK) && (count & LKC_SMASK)))
if ((count & (LKC_XMASK | LKC_EXREQ |
(count & (LKC_XMASK | LKC_SHARED)) == 0) {
if ((count & LKC_XMASK) && lkp->lk_lockholder == td) {
KKASSERT((count & LKC_XMASK) > 1);
LKC_XMASK)) == 0 &&
if (count & (LKC_EXREQ | LKC_XMASK))
if ((count & (LKC_EXREQ | LKC_XMASK)) == 0) {
KKASSERT(count & LKC_XMASK);
KKASSERT(count & LKC_XMASK);
if (lkp->lk_lockholder != td || (count & LKC_XMASK) != 1) {
ncount = (count & ~(LKC_XMASK | LKC_EXREQ2)) +
((count & LKC_XMASK) << LKC_SSHIFT);
if (count & LKC_XMASK) {
KKASSERT((count & LKC_XMASK) == 1);
KKASSERT((count & LKC_XMASK) == 1);
if ((count & (LKC_SMASK | LKC_XMASK)) == 0)
if (count & LKC_XMASK) {
LKC_XMASK)) == 1) {
} else if ((count & (LKC_UPREQ | LKC_XMASK)) ==
} else if ((count & (LKC_EXREQ | LKC_XMASK)) ==
KKASSERT((count & (LKC_XMASK | LKC_SMASK)) != 0);
return ((lkp->lk_count & (LKC_SMASK | LKC_XMASK)) != 0);
return ((lkp->lk_count & LKC_XMASK) != 0);
return ((lkp->lk_count & LKC_XMASK) == 1);