static __always_inline unsigned pvclock_read_begin(conststruct pvclock_vcpu_time_info *src)
{ unsigned version = src->version & ~1; /* Make sure that the version is read before the data. */
virt_rmb(); return version;
}
static __always_inline bool pvclock_read_retry(conststruct pvclock_vcpu_time_info *src, unsigned version)
{ /* Make sure that the version is re-read after the data. */
virt_rmb(); return unlikely(version != src->version);
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.