Where is syscall_table in x86_64 kernel?

I am trying to add a new system call to Linux kernel (x86_64). Based on this article , which explains how to add a system call to the kernel (x86). The article says that I need to define the name of my system call in the file named syscall_table_32.S

which is in src/arch/x86/syscall_table_32.S

.

But in my case there is no file named syscall_table_32.S

or syscall_table_64.S

in the kernel source! There is no directory for the x64 System Call table in src/arch/

.

So where is it syscall_table_64.S

defined in kernel 3.13.0-14-generic (x86_64)? Where can I define a new system call?

+3


source to share


1 answer


Version 3.3 further differs from the 2.X used by the manual. You should look for a directory syscalls

in a directory arch/x86/

. Thus:

cd /kernel-src/arch/x86/syscalls/syscall_64.tbl

      



kernel-src

is the directory where your kernel sources are located. It's a good idea to read this answer on SO and compare it to your resource.

+7


source







All Articles