diff options
author | Matthew Heon <matthew.heon@pm.me> | 2020-12-08 09:59:00 -0500 |
---|---|---|
committer | Matthew Heon <matthew.heon@pm.me> | 2020-12-08 09:59:00 -0500 |
commit | 46337b4708362e9fe2915c7efddc353d88a2cb5e (patch) | |
tree | 5412a06203ddc5380663df921143fccb9728765f /libpod | |
parent | 0cccba834ff2939579f7ef4c340a9337dc9d7d2c (diff) | |
download | podman-46337b4708362e9fe2915c7efddc353d88a2cb5e.tar.gz podman-46337b4708362e9fe2915c7efddc353d88a2cb5e.tar.bz2 podman-46337b4708362e9fe2915c7efddc353d88a2cb5e.zip |
Make `podman stats` slirp check more robust
Just checking for `rootless.IsRootless()` does not catch all the
cases where slirp4netns is in use - we actually allow it to be
used as root as well. Fortify the conditional here so we don't
fail in the root + slirp case.
Fixes #7883
Signed-off-by: Matthew Heon <matthew.heon@pm.me>
Diffstat (limited to 'libpod')
-rw-r--r-- | libpod/networking_linux.go | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/libpod/networking_linux.go b/libpod/networking_linux.go index 2171a9208..bf27989bf 100644 --- a/libpod/networking_linux.go +++ b/libpod/networking_linux.go @@ -900,10 +900,9 @@ func (r *Runtime) reloadContainerNetwork(ctr *Container) ([]*cnitypes.Result, er func getContainerNetIO(ctr *Container) (*netlink.LinkStatistics, error) { var netStats *netlink.LinkStatistics - // rootless v2 cannot seem to resolve its network connection to - // collect statistics. For now, we allow stats to at least run - // by returning nil - if rootless.IsRootless() { + // With slirp4netns, we can't collect statistics at present. + // For now, we allow stats to at least run by returning nil + if rootless.IsRootless() || ctr.config.NetMode.IsSlirp4netns() { return netStats, nil } netNSPath, netPathErr := getContainerNetNS(ctr) |