Lines Matching full:new
18 * can later be used to tell whether any new errors have occurred since that
21 * Note that there is a risk of collisions if new errors are being recorded
25 * been sampled since a new value was recorded. That allows us to avoid bumping
29 * A new errseq_t should always be zeroed out. A errseq_t value of all zeroes
78 errseq_t new; in errseq_set() local
80 /* Clear out error bits and set new error */ in errseq_set()
81 new = (old & ~(MAX_ERRNO|ERRSEQ_SEEN)) | -err; in errseq_set()
85 new += ERRSEQ_CTR_INC; in errseq_set()
88 if (new == old) { in errseq_set()
89 cur = new; in errseq_set()
93 /* Try to swap the new value into place */ in errseq_set()
94 cur = cmpxchg(eseq, old, new); in errseq_set()
100 if (likely(cur == old || cur == new)) in errseq_set()
115 * If the error has been "seen", new callers will not see an old error.
163 * swap it into place as the new eseq value. Then, set that value as the new
171 * Return: Negative errno if one has been stored, or 0 if no new error has
177 errseq_t old, new; in errseq_check_and_advance() local
198 new = old | ERRSEQ_SEEN; in errseq_check_and_advance()
199 if (new != old) in errseq_check_and_advance()
200 cmpxchg(eseq, old, new); in errseq_check_and_advance()
201 *since = new; in errseq_check_and_advance()
202 err = -(new & MAX_ERRNO); in errseq_check_and_advance()