title: Can not get correct pid in WSL2
body: <p>I am learning Linux programing.<br/>
  When I trying to write a simple module to get family of a process, I find I can not get current pid of a process and its parent process. How to fix it? <br>
  Here is a part of my code.</p>
  <pre><code>static pid_t pid = 1;
  module_param(pid, int, 0644);
  
  static int hello_init(void) {
      struct task_struct *p;
      struct list_head *pp;
      struct task_struct *psibling;
      struct pid *kpid;
  
      kpid = find_get_pid(pid);
      p = pid_task(kpid, PIDTYPE_PID);
      printk(&quot;me: %d %s\n&quot;, pid, p-&gt;comm);
      if (p-&gt;parent == NULL) {
          printk(&quot;No Parent\n&quot;);
      }
      else {
          printk(&quot;Parent: %d %s\n&quot;, p-&gt;parent-&gt;pid, p-&gt;parent-&gt;comm);
      }
      list_for_each(pp, &amp;p-&gt;parent-&gt;children) {
          psibling = list_entry(pp, struct task_struct, sibling);
          printk(&quot;sibling %d %s \n&quot;, psibling-&gt;pid, psibling-&gt;comm);
      }
      list_for_each(pp, &amp;p-&gt;children) {
          psibling = list_entry(pp, struct task_struct, sibling);
          printk(&quot;children %d %s \n&quot;, psibling-&gt;pid, psibling-&gt;comm);
      }
      return 0;
  }
  </code></pre>
  <p>result:</p>
  <pre><code>sudo insmod module.ko pid=1
  dmesg
  [ 6396.170631] me: 237 systemd
  [ 6396.170633] Parent: 235 unshare
  [ 6396.170633] sibling 237 systemd
  [ 6396.170633] children 286 systemd-journal
  [ 6396.170634] children 306 systemd-udevd
  [ 6396.170635] children 314 systemd-network
  [ 6396.170635] children 501 snapfuse
  [ 6396.170636] children 508 dbus-daemon
  [ 6396.170636] children 509 NetworkManager
  [ 6396.170637] children 632 systemd-logind
  [ 6396.170637] children 639 systemd
  [ 6396.170638] children 665 rtkit-daemon
  [ 6396.170638] children 671 polkitd
  [ 6396.170638] children 711 udisksd
  [ 6396.170639] children 761 upowerd
  </code></pre>