title: module_init not showing the printk that I want it to
body: <p>I am trying to make my module display a <code>printk</code>. I'm new to this so I might have some programming errors. This is my module C file:</p>
  
  <pre><code>#include &lt;linux/linkage.h&gt;
  #include &lt;linux/time.h&gt;
  #include &lt;linux/module.h&gt;
  
  asmlinkage long sys_mycall(int myid, char* firstname)
  {
      printk ("Hello, %s! \n sys_mycall called from process %d with  ID %d. \n",
          firstname, current-&gt;id, myid);
  
      return 0;
  }
  
  static int my_init(void)
  {
      return 0;
  }
  
  static int my_exit(void)
  {
      printk("Goodbye!");
      return 0;
  }
  
  module_init(sys_mycall);
  module_exit(my_exit);
  </code></pre>
  
  <p>First thing is that I don't know how the arrow pointer exactly works so I usually omit it from the <code>printk</code> so it compiles perfectly. If someone can give me a link or something on how to understand it I would really appreciate it.</p>
  
  <p>When I insert it using <code>insmod</code> in the terminal and then display the message using <code>dmesg</code> I get the message by the <code>module_init</code> calling the <code>sys_mycall</code> but I cannot add any arguments to it and it displays the message but it doesn't show anything for <code>firstname</code> or for <code>myid</code>.</p>