1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
| /*
| * Copyright 2006 Andi Kleen, SUSE Labs.
| * Subject to the GNU Public License, v.2
| *
| * Fast user context implementation of getcpu()
| */
|
| #include <linux/kernel.h>
| #include <linux/getcpu.h>
| #include <linux/time.h>
| #include <asm/vgtod.h>
|
| notrace long
| __vdso_getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *unused)
| {
| vdso_read_cpunode(cpu, node);
| return 0;
| }
|
| long getcpu(unsigned *cpu, unsigned *node, struct getcpu_cache *tcache)
| __attribute__((weak, alias("__vdso_getcpu")));
|
|