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>
