Skip to content

Commit

Permalink
[PATCH] x86-64: Auto compute __NR_syscall_max at compile time
Browse files Browse the repository at this point in the history
No need to maintain it anymore

Signed-off-by: Andi Kleen <ak@suse.de>
  • Loading branch information
Andi Kleen authored and Andi Kleen committed May 2, 2007
1 parent 2f3c30e commit 57a4f91
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 2 deletions.
10 changes: 10 additions & 0 deletions arch/x86_64/kernel/asm-offsets.c
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,14 @@

#define BLANK() asm volatile("\n->" : : )

#define __NO_STUBS 1
#undef __SYSCALL
#undef _ASM_X86_64_UNISTD_H_
#define __SYSCALL(nr, sym) [nr] = 1,
static char syscalls[] = {
#include <asm/unistd.h>
};

int main(void)
{
#define ENTRY(entry) DEFINE(tsk_ ## entry, offsetof(struct task_struct, entry))
Expand Down Expand Up @@ -71,5 +79,7 @@ int main(void)
DEFINE(TSS_ist, offsetof(struct tss_struct, ist));
BLANK();
DEFINE(crypto_tfm_ctx_offset, offsetof(struct crypto_tfm, __crt_ctx));
BLANK();
DEFINE(__NR_syscall_max, sizeof(syscalls) - 1);
return 0;
}
1 change: 1 addition & 0 deletions arch/x86_64/kernel/syscall.c
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
#include <linux/linkage.h>
#include <linux/sys.h>
#include <linux/cache.h>
#include <asm/asm-offsets.h>

#define __NO_STUBS

Expand Down
2 changes: 0 additions & 2 deletions include/asm-x86_64/unistd.h
Original file line number Diff line number Diff line change
Expand Up @@ -620,8 +620,6 @@ __SYSCALL(__NR_vmsplice, sys_vmsplice)
#define __NR_move_pages 279
__SYSCALL(__NR_move_pages, sys_move_pages)

#define __NR_syscall_max __NR_move_pages

#ifndef __NO_STUBS
#define __ARCH_WANT_OLD_READDIR
#define __ARCH_WANT_OLD_STAT
Expand Down

0 comments on commit 57a4f91

Please sign in to comment.