title: #define SYSCALL_DEFINEx(x, sname, ...)
body: <p><br></p>
  
  <p>In the 3.14 linux kernel there is the following macro :</p>
  
  <pre><code>#define SYSCALL_DEFINEx(x, sname, ...)
  </code></pre>
  
  <p>It's located in <strong>include/linux/syscalls.h</strong>.</p>
  
  <p>I added a syscall in the source, I compiled it and I made a little program using the the syscall. It seems to works because my syscall have been called and printed a message.</p>
  
  <p>But I didn't use the macro. I read things about it. I understood that this macro is for the arguments. But I don't understand when we have to use it because I made a "grep" and it seems that most of the syscalls which take parameters don't use it.</p>
  
  <p>Do I have to use it? Why?</p>
  
  <p>And I have the same probleme for others macro in the same file (SYSCALL_METADATA(sname, nb, ...), SYSCALL_TRACE_ENTER_EVENT(sname), etc). Do I have to use them all even if my syscall works?</p>
  
  <p>I'm afraid to miss something if I don't use these macro and I can't find enough informations about it :/</p>
  
  <p>Thanks!</p>