• Vojtech Pavlik's avatar
    [PATCH] Add the vgetcpu vsyscall · c08c8205
    Vojtech Pavlik authored
    This patch adds a vgetcpu vsyscall, which depending on the CPU RDTSCP
    capability uses either the RDTSCP or CPUID to obtain a CPU and node
    numbers and pass them to the program.
    
    AK: Lots of changes over Vojtech's original code:
    Better prototype for vgetcpu()
    It's better to pass the cpu / node numbers as separate arguments
    to avoid mistakes when going from SMP to NUMA.
    Also add a fast time stamp based cache using a user supplied
    argument to speed things more up.
    Use fast method from Chuck Ebbert to retrieve node/cpu from
    GDT limit instead of CPUID
    Made sure RDTSCP init is always executed after node is known.
    Drop printk
    Signed-off-by: default avatarVojtech Pavlik <vojtech@suse.cz>
    Signed-off-by: default avatarAndi Kleen <ak@suse.de>
    c08c8205
segment.h 1.21 KB