]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/i386/rtclock.h
xnu-1228.12.14.tar.gz
[apple/xnu.git] / osfmk / i386 / rtclock.h
index e3ea716d46e088327768ee2308dd9e78d26c8ae1..6f3406a8cff4cdca4e355e650c0503781452f059 100644 (file)
@@ -83,6 +83,7 @@ extern rtc_nanotime_t rtc_nanotime_info;
 0:     movl    RNT_GENERATION(%edi),%esi       /* being updated? */    ; \
        testl   %esi,%esi                                               ; \
        jz      0b                              /* wait until done */   ; \
+       lfence                                                          ; \
        rdtsc                                                           ; \
        lfence                                                          ; \
        subl    RNT_TSC_BASE(%edi),%eax                                 ; \
@@ -111,6 +112,7 @@ extern rtc_nanotime_t       rtc_nanotime_info;
 0:     movl    RNT_GENERATION(%rdi),%esi                               ; \
        test    %esi,%esi                       /* info updating? */    ; \
        jz      0b                              /* - wait if so */      ; \
+       lfence                                                          ; \
        rdtsc                                                           ; \
        lfence                                                          ; \
        shlq    $32,%rdx                                                ; \