System call porting

Saket Sinha saket.sinha89 at gmail.com
Fri Jul 12 02:20:42 EDT 2013


This is to discuss the problems I am facing with porting  a driver from a
2.6.18 kernel to 3.8.3 kernel.
Apart from the APIs and functions that have changed(which I have more or
less replaced), the system call implementation has changed.

http://lxr.linux.no/linux+v2.6.18/arch/i386/kernel/syscall_table.S#L41
http://lxr.linux.no/linux+v3.8.3/arch/x86/syscalls/syscall_64.tbl#L92

Now due to this, some unnecessary warnings and errors are coming.

To explain this I am providing the compiler error which is not coming on
2.6.18 kernel but is coming on 3.8.3 kernel.

the below line is generating
https://github.com/HeisSpiter/hepunion/blob/master/fs/hepunion/helpers.c#L492
mode &= ~current->fs->umask;
the following error-
 ERROR:Derefencing pointer to incomplete type


This has nothing to do with any APIs or change in the structure in the
newer kernel.
This just the importation of mkdir code from the linux kernel. Likely to be
sys_mkdir, IIRC. Talking of which, I'd think that I must sync ALL the
importations from the Linux kernel with mine.


Regards,
Saket Sinha
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20130712/6489da21/attachment.html 


More information about the Kernelnewbies mailing list