title: CPU Utilization high for sleeping processes
body: <p>I have a process that appears to be deadlocked:</p>
  
  <pre><code># strace -p 5075
  Process 5075 attached - interrupt to quit
  futex(0x419cf9d0, FUTEX_WAIT, 5095, NULL
  </code></pre>
  
  <p>It is sitting on the "futex" system call, and seems to be indefinitely waiting on a lock.  The process is shown to be consuming a large amount of CPU when "top" is run:</p>
  
  <pre><code># top -b -n 1
  top - 23:13:18 up 113 days,  4:19,  1 user,  load average: 1.69, 1.74, 1.72
  Tasks: 269 total,   1 running, 268 sleeping,   0 stopped,   0 zombie
  Cpu(s):  8.1%us,  0.1%sy,  0.0%ni, 91.8%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
  Mem:  12165696k total,  3810476k used,  8355220k free,    29440k buffers
  Swap:  8388600k total,    43312k used,  8345288k free,   879988k cached
  
  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
  5075 omdb      18   0 2373m 1.7g  26m S 199.7 14.9 102804:11 java
  </code></pre>
  
  <p>The process is also shown to be in a "S" - Sleep state, which makes sense if it's waiting on some resource.  However, I don't understand why CPU utilization would be close to 200% if the process is in the sleep state.  Why does top report such high CPU utilization on a sleeping process?  Shouldn't its CPU utilization be zero?</p>