[lldb/Host] Add missing proc states
authorJordan Rupprecht <rupprecht@google.com>
Wed, 2 Sep 2020 15:24:06 +0000 (08:24 -0700)
committerJordan Rupprecht <rupprecht@google.com>
Wed, 2 Sep 2020 15:24:06 +0000 (08:24 -0700)
commitc5aa63dd560b9cf5825c1e4da2a9ee53dbd772f3
tree9ccb3a007b2ec5847364776b3f0db2b2a7f185a3
parentec489ae048fd971b22400c61458a5295eeba368a
[lldb/Host] Add missing proc states

The /proc/<pid>/status parsing is missing a few cases:
- Idle
- Parked
- Dead

If we encounter an unknown proc state, this leads to an msan warning. In reality, we only check that the state != Zombie, so it doesn't really matter that we handle all cases, but handle them anyway (current list: [1]). Also explicitly set it to unknown if we encounter an unknown state. There will still be an msan warning if the proc entry has no `State:` line, but that should not happen.

Use a StringSwitch to make the handling of proc states a little more compact.

[1] https://github.com/torvalds/linux/blob/master/fs/proc/array.c

Reviewed By: labath

Differential Revision: https://reviews.llvm.org/D86818
lldb/source/Host/linux/Host.cpp