aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/linkage.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/linkage.h')
-rw-r--r--include/linux/linkage.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/linux/linkage.h b/include/linux/linkage.h
index 807f1e533226..d3e8ad23a8e0 100644
--- a/include/linux/linkage.h
+++ b/include/linux/linkage.h
@@ -2,6 +2,8 @@
2#define _LINUX_LINKAGE_H 2#define _LINUX_LINKAGE_H
3 3
4#include <linux/compiler.h> 4#include <linux/compiler.h>
5#include <linux/stringify.h>
6#include <linux/export.h>
5#include <asm/linkage.h> 7#include <asm/linkage.h>
6 8
7#ifdef __cplusplus 9#ifdef __cplusplus
@@ -14,6 +16,20 @@
14#define asmlinkage CPP_ASMLINKAGE 16#define asmlinkage CPP_ASMLINKAGE
15#endif 17#endif
16 18
19#ifndef cond_syscall
20#define cond_syscall(x) asm( \
21 ".weak " VMLINUX_SYMBOL_STR(x) "\n\t" \
22 ".set " VMLINUX_SYMBOL_STR(x) "," \
23 VMLINUX_SYMBOL_STR(sys_ni_syscall))
24#endif
25
26#ifndef SYSCALL_ALIAS
27#define SYSCALL_ALIAS(alias, name) asm( \
28 ".globl " VMLINUX_SYMBOL_STR(alias) "\n\t" \
29 ".set " VMLINUX_SYMBOL_STR(alias) "," \
30 VMLINUX_SYMBOL_STR(name))
31#endif
32
17#define __page_aligned_data __section(.data..page_aligned) __aligned(PAGE_SIZE) 33#define __page_aligned_data __section(.data..page_aligned) __aligned(PAGE_SIZE)
18#define __page_aligned_bss __section(.bss..page_aligned) __aligned(PAGE_SIZE) 34#define __page_aligned_bss __section(.bss..page_aligned) __aligned(PAGE_SIZE)
19 35