Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 2 Sep 2002 16:02:11 -0700 (PDT)
From:      Lamont Granquist <lamont@scriptkiddie.org>
To:        FreeBSD-Current <current@freebsd.org>
Subject:   perl busted, spins, ignores SIGKILL
Message-ID:  <20020902153944.T4462-100000@coredump.scriptkiddie.org>
In-Reply-To: <20020903002426.B1166-100000@nihil>

next in thread | previous in thread | raw e-mail | index | archive | help

i cvsup'd last night, and now i tried portupdate -a -f and debugging
build problems with libtool i found that on my system i can make perl spin
and consume 100% of a CPU just by:

perl -pe s/foo/bar/g /tmp

(turs out i can do this with any perl command, even perl --version...)

i also can't kill this process, or attach to it with gdb.  i can get an
strace though which looks like:

execve("<8A><F3>^D(H<F3>^E(<B0><F3><BF><BF><<F4><BF><BF>^D<F4><BF><BF<E1>^E(^?^R
", [], [/* 0 vars */]) = -1 ENOENT (No such file or directory)
execve("", [], [/* 0 vars */])          = -1 ENOENT (No such file or
directory)
execve("", [], [/* 0 vars */])          = -1 ENOENT (No such file or
directory)
execve("", [], [/* 0 vars */])          = 0
mmap(0, 2664, PROT_READ|PROT_WRITE, MAP_ANON, -1, 0) = 0x28061000
munmap(0x28061000, 2664)                = 0
__sysctl([sysctl.debug], 2, "", [0], NULL, 0) = 0
mmap(0, 32768, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANON, -1, 0) =
0x28061000
geteuid(0x28049000)                     = 0
getuid()                                = 0 (euid 0)
getegid(0x28049000)                     = 0
getgid()                                = 0 (egid 0)
open("/var/run/ld-elf.so.hints", O_RDONLY) = 3
read(3, " object\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 128)
= 128
lseek(3, 549755813888, SEEK_SET)        = 128
read(3, "/usr/lib:/usr/lib/compat:/usr/X1"..., 55) = 55
close(3)                                = 0
access("/usr/lib/libc.so.5", F_OK)      = 0
open("/usr/lib/libc.so.5", O_RDONLY)    = 3
fstat(3, {st_mode=0, st_size=0, ...})   = 0
read(3, "\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"..., 4096)
= 409
6
mmap(0, 794624, PROT_READ|PROT_EXEC, MAP_PRIVATE, 3, 0) = 0x28069000
mmap(0x28113000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED, 3,
0xa90000
0000000) = 0x28113000
mmap(0x28118000, 77824, PROT_READ|PROT_WRITE,
MAP_PRIVATE|MAP_FIXED|MAP_ANON, -1
, 0) = 0x28118000
close(3)                                = 0
mmap(0, 216, PROT_READ|PROT_WRITE, MAP_ANON, -1, 0) = 0x2812b000
munmap(0x2812b000, 216)                 = 0
mprotect(0x28069000, 696320, PROT_READ|PROT_WRITE|PROT_EXEC) = 0
mmap(0, 18824, PROT_READ|PROT_WRITE, MAP_ANON, -1, 0) = 0x2812b000
munmap(0x2812b000, 18824)               = 0
mprotect(0x28069000, 696320, PROT_READ|PROT_EXEC) = 0
sigaction(SIGILL, {SIG_DFL}, {SIG_DFL}) = 0
sigprocmask(SIG_BLOCK, NULL, [])        = 0
sigaction(SIGILL, {SIG_DFL}, NULL)      = 0
sigprocmask(SIG_BLOCK, ~[ILL TRAP ABRT EMT FPE BUS SEGV SYS], []) = 0
sigprocmask(SIG_SETMASK, [], NULL)      = 0
execve("<8A><F3>^D(H<F3>^E(<B8><F3><BF><BF>D<F4><BF><BF>^L<F4><BF><BF<E1>^E(^?^R
", [], [/* 0 vars */]) = -1 ENOENT (No such file or directory)
execve("", [], [/* 0 vars */])          = -1 ENOENT (No such file or
directory)
execve("", [], [/* 0 vars */])          = -1 ENOENT (No such file or
directory)
execve("", [], [/* 0 vars */])          = -1 ENOENT (No such file or
directory)
execve("", [], [/* 0 vars */])          = -1 ENOENT (No such file or
directory)
execve("", [], [/* 0 vars */])          = 0

(wash, rinse, repeat endlessly..)

strace sometimes fails with:

PIOCWSTOP: Input/output error

ahhh...  the plot thickens, now its stopped consuming CPU, strace does
this:

coredump# strace -p 4432
--- SIGINT (Interrupt) ---
--- SIGINT (Interrupt) ---
coredump# strace -p 4432
strace: open("/proc/...", ...): No such file or directory
trouble opening proc file
coredump# strace -p 4432
strace: open("/proc/...", ...): No such file or directory
trouble opening proc file


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-current" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20020902153944.T4462-100000>