Hi, I am trying to add a new syscall to kernel 3.4. So far I have tried at least four different tutorials from Internet. To my utter frustration, whatever source files they have referred in the tutorials, at least one of those is missing in all the cases. Why isn't there a consistent interface for addition of syscall across kernel version? How will I get to know the method for a specific kernel version officially?
On Thu, Jun 05, 2014 at 06:10:06PM +0530, Dipanjan Das wrote:
Hi,
I am trying to add a new syscall to kernel 3.4. So far I have tried at least four different tutorials from Internet. To my utter frustration, whatever source files they have referred in the tutorials, at least one of those is missing in all the cases.
Why isn't there a consistent interface for addition of syscall across kernel version?
Because code changes over time for valid reasons. If it didn't, the project would be dead.
How will I get to know the method for a specific kernel version officially?
What do you mean by "officially"? You have the source to the kernel for all versions, that's the only "official" thing to use. Why are you using the 3.4 kernel, that one is obsolete for any new development? thanks, greg k-h
On Thu, 05 Jun 2014 18:10:06 +0530, Dipanjan Das said:
Why isn't there a consistent interface for addition of syscall across kernel version?
Please read Documentation/stable_api_nonsense.txt for the explanation.
How will I get to know the method for a specific kernel version officially?
I'll be very blunt. Wiring up a new syscall is actually fairly easy and straightforward. If you are having trouble figuring out how to do it when each arch already has 200 to 300 already-done examples and 4 how-to tutorials off the net, you're probably going to have even more trouble writing the actual code of a syscall that does something more useful than doing a printk("Hello world"). Sometimes, you need to admit to yourself that you're never going to be a Formula One driver...
participants (3)
-
Dipanjan Das -
Greg KH -
Valdis.Kletnieks@vt.edu