]> git.pld-linux.org Git - projects/rc-scripts.git/commitdiff
filter_ns: always add dead processes
authorElan Ruusamäe <glen@delfi.ee>
Wed, 20 Nov 2013 10:24:43 +0000 (12:24 +0200)
committerElan Ruusamäe <glen@delfi.ee>
Wed, 20 Nov 2013 10:24:43 +0000 (12:24 +0200)
lib/functions

index f7af7defeabe93dc1981b5a864f777941a6f3ff9..56cab8051812f76851c20bf7fd4e7767a7ba5ba5 100644 (file)
@@ -534,11 +534,17 @@ filter_ns() {
        [ "$cur_ns" ] || return 1
 
        local pid ns pids=""
+       # add pids if it matches current pid namespace
+       # we should add pids what do not exist (dead processes),
+       # but not add pids whose namespace does not match
+       # (processes belonging to different NS do exist in /proc)
        for pid in "$@"; do
+               if [ ! -d /proc/$pid ]; then
+                       pids="$pids $pid"
+                       continue
+               fi
                ns=$(resolvesymlink /proc/$pid/ns/pid)
-               # add if matches current pid namespace
-               # also add if empty ns found (for dead pids?) FIXME
-               if [ -z "$ns" -o "$ns" = "$cur_ns" ]; then
+               if [ "$ns" = "$cur_ns" ]; then
                        pids="$pids $pid"
                fi
        done
This page took 0.124562 seconds and 4 git commands to generate.