summaryrefslogtreecommitdiff
path: root/libpod
diff options
context:
space:
mode:
authorMatthew Heon <matthew.heon@pm.me>2020-12-08 09:59:00 -0500
committerMatthew Heon <matthew.heon@pm.me>2020-12-08 09:59:00 -0500
commit46337b4708362e9fe2915c7efddc353d88a2cb5e (patch)
tree5412a06203ddc5380663df921143fccb9728765f /libpod
parent0cccba834ff2939579f7ef4c340a9337dc9d7d2c (diff)
downloadpodman-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.go7
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)