Revert "Scan /proc/<pid>/cmdline for GC roots"

This reverts commit 194e3374b8.
Checking the command line for GC roots means that

  $ nix-store --delete $path

will fail because $path is now a root because it's mentioned on the
command line.
This commit is contained in:
Eelco Dolstra 2013-12-20 14:18:24 +01:00
parent 8931bf7168
commit b352fe2775

View file

@ -15,6 +15,8 @@ sub readProc {
my $process = "/proc/$name"; my $process = "/proc/$name";
#print STDERR "=== $process\n";
my $target; my $target;
print "$target\n" if $target = readlink "$process/exe"; print "$target\n" if $target = readlink "$process/exe";
print "$target\n" if $target = readlink "$process/cwd"; print "$target\n" if $target = readlink "$process/cwd";
@ -36,17 +38,11 @@ sub readProc {
} }
# Get all store paths that appear in the environment of this process. # Get all store paths that appear in the environment of this process.
my $re = "\Q$Nix::Config::storeDir\E\/[0-9a-z]+[0-9a-zA-Z\+\-\._\?=]*";
eval { eval {
my $env = Nix::Utils::readFile "$process/environ"; my $env = Nix::Utils::readFile "$process/environ";
my @matches = $env =~ /$re/g; my @matches = $env =~ /\Q$Nix::Config::storeDir\E\/[0-9a-z]+[0-9a-zA-Z\+\-\._\?=]*/g;
print "$_\n" foreach @matches; print "$_\n" foreach @matches;
}; }
eval {
my $cmdline = Nix::Utils::readFile "$process/cmdline";
my @matches = $cmdline =~ /$re/g;
print "$_\n" foreach @matches;
};
} }
closedir DIR; closedir DIR;