dat_crstep_xchg_atomic
} while (!dat_crstep_xchg_atomic(crstep, oldcrste, newcrste, gfn, walk->asce));
if (dat_crstep_xchg_atomic(crstep, old, new, gfn, asce))
if (!dat_crstep_xchg_atomic(crstep, crste, new_crste, gfn, walk->asce))
bool dat_crstep_xchg_atomic(union crste *crstep, union crste old, union crste new, gfn_t gfn,
return dat_crstep_xchg_atomic(_CRSTEP(pmdp), _CRSTE(old), _CRSTE(new), gfn, asce);
return dat_crstep_xchg_atomic(_CRSTEP(pudp), _CRSTE(old), _CRSTE(new), gfn, asce);
} while (!dat_crstep_xchg_atomic(crstep, oldcrste, empty, gfn, asce));
while (!dat_crstep_xchg_atomic(table, READ_ONCE(*table), newcrste, r_gfn, sg->asce))
} while (!dat_crstep_xchg_atomic(crstep, crste, new, gfn, walk->asce));
} while (!dat_crstep_xchg_atomic(crstep, oldcrste, newcrste, c_gfn, gmap->asce));
while (!dat_crstep_xchg_atomic(crstep, READ_ONCE(*crstep), _PMD_EMPTY, c_gfn, gmap->asce))
if (dat_crstep_xchg_atomic(crstep, crste, newcrste, gfn, walk->asce))
if (!dat_crstep_xchg_atomic(crstep, oldcrste, newcrste, gfn, gmap->asce))
return dat_crstep_xchg_atomic(crstep, oldcrste, newcrste, gfn, gmap->asce);