Skip to content
  • Andre Przywara's avatar
    target-i386: add RDTSCP support · 1b050077
    Andre Przywara authored
    
    
    RDTSCP reads the time stamp counter and atomically also the content
    of a 32-bit MSR, which can be freely set by the OS. This allows CPU
    local data to be queried by userspace.
    Linux uses this to allow a fast implementation of the getcpu()
    syscall, which uses the vsyscall page to avoid a context switch.
    AMD CPUs since K8RevF and Intel CPUs since Nehalem support this
    instruction.
    RDTSCP is guarded by the RDTSCP CPUID bit (Fn8000_0001:EDX[27]).
    
    Signed-off-by: default avatarAndre Przywara <andre.przywara@amd.com>
    Signed-off-by: default avatarAurelien Jarno <aurelien@aurel32.net>
    1b050077