mirror of https://gitee.com/openkylin/linux.git
18ad51dd34
We have a request for a fast method of getting CPU and NUMA node IDs from userspace. This patch implements a getcpu VDSO function, similar to x86. Ben suggested we use SPRG3 which is userspace readable. SPRG3 can be modified by a KVM guest, so we save the SPRG3 value in the paca and restore it when transitioning from the guest to the host. I have a glibc patch that implements sched_getcpu on top of this. Testing on a POWER7: baseline: 538 cycles vdso: 30 cycles Signed-off-by: Anton Blanchard <anton@samba.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org> |
||
---|---|---|
.. | ||
.gitignore | ||
Makefile | ||
cacheflush.S | ||
datapage.S | ||
getcpu.S | ||
gettimeofday.S | ||
note.S | ||
sigtramp.S | ||
vdso64.lds.S | ||
vdso64_wrapper.S |