seqcount
#define __read_seqcount_retry(seqcount, gen) \
(!seqc_consistent_no_fence(&(seqcount)->seqc, gen))
#define read_seqcount_retry(seqcount, gen) \
(!seqc_consistent(&(seqcount)->seqc, gen))
typedef struct seqcount seqcount_t;
struct seqcount seql_count;
__seqcount_init(struct seqcount *seqcount, const char *name __unused,
seqcount->seqc = 0;
#define seqcount_init(seqcount) __seqcount_init(seqcount, NULL, NULL)
seqcount_mutex_init(struct seqcount_mutex *seqcount, void *mutex __unused)
seqcount->seqc = 0;
#define seqcount_ww_mutex_init(seqcount, ww_mutex) \
seqcount_mutex_init((seqcount), (ww_mutex))
struct seqcount: seqc_sleepable_write_begin, \
struct seqcount: seqc_sleepable_write_end, \
int seqcount;
seqcount = ap->a_ioflag >> IO_SEQSHIFT;
if (seqcount > 1 &&
int seqcount = (flags & BA_SEQMASK) >> BA_SEQSHIFT;
if (seqcount && (vp->v_mount->mnt_flag & MNT_NOCLUSTERR) == 0) {
MAXBSIZE, seqcount, 0, &nbp);
int error, orig_resid, seqcount;
seqcount = ap->a_ioflag >> IO_SEQSHIFT;
NOCRED, blkoffset + uio->uio_resid, seqcount,
} else if (seqcount > 1) {
int blkoffset, error, flags, ioflag, resid, size, seqcount, xfersize;
seqcount = ioflag >> IO_SEQSHIFT;
if (seqcount > BA_SEQMAX)
flags = seqcount << BA_SEQSHIFT;
ip->i_size, seqcount, 0);
int err, n = 0, on = 0, seqcount;
seqcount = ioflag >> IO_SEQSHIFT;
seqcount = MIN(seqcount,
totread, seqcount, 0, &bp);
} else if (seqcount > 1 && data->max_readahead_blocks >= 1) {
int n, on, seqcount, err = 0;
seqcount = ioflag >> IO_SEQSHIFT;
filesize, seqcount, 0);
int seqcount;
seqcount = ap->a_ioflag >> IO_SEQSHIFT;
NOCRED, on + uio->uio_resid, seqcount, 0, &bp);
} else if (seqcount > 1) {
int seqcount;
seqcount = ioflag >> IO_SEQSHIFT;
dep->de_FileSize, seqcount, 0);
int biosize, bcount, error, i, n, nra, on, save2, seqcount;
seqcount = (int)((off_t)(ioflag >> IO_SEQSHIFT) * biosize / BKVASIZE);
for (nra = 0; nra < nmp->nm_readahead && nra < seqcount &&
maxra = seqcount;
if (!seqcount) {
u_quad_t filesize, int seqcount, int gbflags)
if (!async && seqcount > 0) {
if (seqcount > 1) {
if (seqcount > 1) {
struct ucred *cred, long totread, int seqcount, int gbflags,
int seqcount = (flags & BA_SEQMASK) >> BA_SEQSHIFT;
if (seqcount != 0 &&
MAXBSIZE, seqcount, gbflags, &nbp);
int seqcount = (flags & BA_SEQMASK) >> BA_SEQSHIFT;
if (seqcount != 0 &&
MAXBSIZE, seqcount, gbflags, &nbp);
ip->i_size, seqcount, GB_UNMAPPED);
int bflag, error, ioflag, seqcount;
seqcount = ap->a_ioflag >> IO_SEQSHIFT;
seqcount, bflag, &bp);
} else if (seqcount > 1) {
int seqcount;
seqcount = ap->a_ioflag >> IO_SEQSHIFT;
if (seqcount > BA_SEQMAX)
flags = seqcount << BA_SEQSHIFT;