LKC_UPREQ
if (count & (LKC_EXREQ | LKC_EXREQ2 | LKC_SMASK | LKC_UPREQ)) {
while ((count & (LKC_EXREQ | LKC_UPREQ | LKC_CANCEL)) &&
if (count & LKC_UPREQ) {
ncount = (count + 1) & ~(LKC_UPREQ | LKC_CANCEL |
if ((count & (LKC_EXREQ2 | LKC_UPREQ)) ==
} else if (count & LKC_UPREQ) {
if ((count & LKC_UPREQ) == 0) {
count & ~LKC_UPREQ)) {
ncount &= ~(LKC_EXREQ | LKC_EXREQ2 | LKC_UPREQ);
ncount = count & ~LKC_UPREQ;
KKASSERT((count & (LKC_EXREQ | LKC_UPREQ)) == 0 &&
if (count & (LKC_XMASK | LKC_SMASK | LKC_EXREQ | LKC_UPREQ)) {
if ((count & (LKC_EXREQ | LKC_UPREQ)) ||
(count & (LKC_EXREQ | LKC_UPREQ))) {
(count & (LKC_EXREQ | LKC_UPREQ))) {
LKC_UPREQ | LKC_SHARED)) == 0) {
if ((count & (LKC_UPREQ | LKC_EXREQ |
if (count & LKC_UPREQ) {
ncount = (count - LKC_SCOUNT) | LKC_UPREQ;
if ((count & LKC_UPREQ) == 0) {
if ((count & LKC_UPREQ) == 0) {
if ((count & (LKC_UPREQ | LKC_EXREQ |
} else if ((count & (LKC_UPREQ | LKC_XMASK)) ==
(LKC_UPREQ | 1)) {
ncount = count & ~LKC_UPREQ;
if ((count & (LKC_EXREQ | LKC_UPREQ | LKC_SMASK)) ==
} else if ((count & (LKC_UPREQ | LKC_SMASK)) ==
(LKC_UPREQ | LKC_SCOUNT)) {
~(LKC_UPREQ | LKC_CANCEL | LKC_SHARED);