System call is not working gives error enosys

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi All,
 
I have Implemented sample system call on tree 3.4.6
Following are the steps i did -
- >I created directory hello in kernel sources base directory i.e /usr/src/kernels/linux3.4.6/hello
 
-> I have created hello.c file in which i added system call definition
#include <linux/kernel.h>
asmlinkage long sys_helloworld()
{
    printk(KERN_NOTICE "\n hello system call ");
   return 0;
}
 
In makefile
obj-y:= hello.c
 
-> In syscall tabel  arch/x86/syscalls/syscall_32.tbl
added - 
349 i386 helloworld sys_helloworld
 
Then compiled the kernel and installed it.
However when i run application strace ouput shows enosys(function not implemneted)
 
application as below
 
int main()
{
   syscall(349)
   return 0;
}
 
strace shows
SYS_349(0x1000,0x804843b,..,..,0)=-1 ENOSYS(function not implemneted)
 
I checked /proc/kallsyms it shows the sys_helloworld symbol
I also tried adding entry in syscall_64.tbl as common though i am running 32 bit kernel.
gdb syscall 349 doesnot give anything
 
Can anyone tell what is wrong here ?
 
Thanks,
-Ulka
 
 


--
Director 
L2IT -Learn & Leverage Information Technology
Leading Professional Training Institute in Pune
www.l2it.com
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux