title: gdb: always stop at 0xffffe410 in __kernel_vsyscall ()
body: <p>I'm using gdb to attach a running process, however, it always stops at <code>__kernel_vsyscall</code>. It looks like it stopped at my system call msgrcv(). I have to <strong>constantly</strong> "cont" it and don't know when it could jump out of kernel and go back to application. How can I make it continue? The following is my procedure.</p>
  
  <ol>
  <li>How did I get this situation? </li>
  <li>How to make it continue?</li>
  </ol>
  
  <p>Thanks!</p>
  
  <pre><code>gdb
  (gdb) attach PID
  ...
  Reading symbols from /lib/ld-linux.so.2...(no debugging symbols found)...done.
  Loaded symbols for /lib/ld-linux.so.2
  0xffffe410 in __kernel_vsyscall ()
  
  (gdb)bt
  
  #0  0xffffe410 in __kernel_vsyscall ()
  #1  0x009ed573 in msgrcv () from /lib/libc.so.6
  #2  0xf7f3a487 in _UX_wgetmsg (mode=0, msgp=0xffbb4178, pmaxtime=0xffbb4164, 
      pdata=0xf7f7a860, ux_type=0) at ../../../ux/com_ux/libux/com/UXipc.c:2550
  #3  0xf7f3ad05 in UX_wgetmsg_v2 (mode=0, msgp=0xffbb4178, maxtime=10000, 
      ux_type=0) at ../../../ux/com_ux/libux/com/UXipc.c:2237
  #4  0x0804bb9b in main (argc=1, argv=0xffbb5394)
      at /path/to/my_application:243
  </code></pre>