xref: /openbmc/linux/arch/x86/entry/vdso/vgetcpu.c (revision 92d33063)
17e300dabSThomas Gleixner // SPDX-License-Identifier: GPL-2.0-only
2d603c8e1SIngo Molnar /*
3d603c8e1SIngo Molnar  * Copyright 2006 Andi Kleen, SUSE Labs.
4d603c8e1SIngo Molnar  *
5d603c8e1SIngo Molnar  * Fast user context implementation of getcpu()
6d603c8e1SIngo Molnar  */
7d603c8e1SIngo Molnar 
8d603c8e1SIngo Molnar #include <linux/kernel.h>
9d603c8e1SIngo Molnar #include <linux/getcpu.h>
10*92d33063SSebastian Andrzej Siewior #include <asm/segment.h>
11d603c8e1SIngo Molnar 
12d603c8e1SIngo Molnar notrace long
13d603c8e1SIngo Molnar __vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused)
14d603c8e1SIngo Molnar {
1522245bdfSIngo Molnar 	vdso_read_cpunode(cpu, node);
16ec3a9418SIngo Molnar 
17d603c8e1SIngo Molnar 	return 0;
18d603c8e1SIngo Molnar }
19d603c8e1SIngo Molnar 
20d603c8e1SIngo Molnar long getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache)
21d603c8e1SIngo Molnar 	__attribute__((weak, alias("__vdso_getcpu")));
22