The ‘wa’ state in `top` can indicate an IO wait, but to figure out what’s causing the IO wait try this command:
# ps aux | awk '$8 ~ /D/ { print $0 }' | less
You can read more here. Thanks to bsandro on #lobsters.
According to `man top`:
The status of the task can be one of: D = uninterruptible sleep I = idle R = running S = sleeping T = stopped by job control signal t = stopped by debugger during trace Z = zombie