diff options
author | Nicolas Lacasse <nlacasse@google.com> | 2020-06-22 09:52:51 -0700 |
---|---|---|
committer | gVisor bot <gvisor-bot@google.com> | 2020-06-22 09:54:22 -0700 |
commit | a480b4faf4befb029bf905fdb604996c8312a6a2 (patch) | |
tree | 7d73e52cab23b9bdadcbc6d4ef10afea94de92bd /pkg/tcpip/stack/transport_demuxer.go | |
parent | 00928d142dd580c44a392e8e51246b543dc4f957 (diff) |
Allow readdir(/proc/[tid]/net) to return EINVAL on a zombie task.
Despite what the man page says, linux will return EINVAL when calling
getdents() an a /proc/[tid]/net file corresponding to a zombie task. This
causes readdir() to return a null pointer AND errno=EINVAL.
See fs/proc/proc_net.c:proc_tgid_net_readdir() for where this occurs.
We have tests that recursively read /proc, and are likely to hit this when
running natively, so we must catch and handle this case.
PiperOrigin-RevId: 317674168
Diffstat (limited to 'pkg/tcpip/stack/transport_demuxer.go')
0 files changed, 0 insertions, 0 deletions