Hello all,
How to resolve new system call number assignments. On Fedora Core 1 i got next
.long SYMBOL_NAME(sys_myservice) /*259*/
number in entry.S
Also for include/asm/unistd.h gives me
#define __NR_myservice 259
Then in user space include/asm/unistd.h i got next number as 271.
I proceed with 271 no. but got results that no syscall is defined.I have successfully implemented new system call given in
http://fossil.wpi.edu/docs/howto_add_systemcall.html
on RH9 system. But now i want same thing to be implemeted on Fedora Core 1 but i am getting following strace results.
[root@localhost root]# strace ./user-app
execve("./user-app", ["./user-app"], [/* 41 vars */]) = 0
uname({sys="Linux", node="localhost.localdomain",...}) = 0
set_tid_address(0) = -1 ENOSYS (Function not implemented)
brk(0) = 0x80495bc
open("/etc/ld.so.preload", O_RDONLY) = -1 ENOENT (No such file or
directory)
open("/etc/ld.so.cache", O_RDONLY) = 3
fstat64(3, {st_mode=S_IFREG|0644, st_size=84369, ...}) = 0
old_mmap(NULL, 84369, PROT_READ, MAP_PRIVATE, 3, 0) =0x40000000
close(3) = 0
open("/lib/i686/libc.so.6", O_RDONLY) = 3
read(3,"\177ELF\1\1\1\0\0\0\0\0\0\0\0\0\3\0\3\0\1\0\0\0
\\\1\000"..., 512) =512
fstat64(3, {st_mode=S_IFREG|0755, st_size=1564716,...}) = 0
old_mmap(NULL, 4096, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40015000
old_mmap(NULL, 1287652, PROT_READ|PROT_EXEC,
MAP_PRIVATE, 3, 0) = 0x40016000
old_mmap(0x4014b000, 12288, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED, 3, 0x135000) = 0x4014b000
old_mmap(0x4014e000, 9700, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4014e000
close(3) = 0
munmap(0x40000000, 84369) = 0
utimes("string", {3221223448, 134513588}) = -1 ENOSYS (Function not implemented)
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Now please help me how can i then assign
sys_call_table no.?