From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751186AbWF1UOg (ORCPT ); Wed, 28 Jun 2006 16:14:36 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751240AbWF1UOg (ORCPT ); Wed, 28 Jun 2006 16:14:36 -0400 Received: from aa002msr.fastwebnet.it ([85.18.95.65]:59832 "EHLO aa002msr.fastwebnet.it") by vger.kernel.org with ESMTP id S1751186AbWF1UOe (ORCPT ); Wed, 28 Jun 2006 16:14:34 -0400 Date: Wed, 28 Jun 2006 22:14:10 +0200 From: Paolo Ornati To: "Vladimir V. Saveliev" Cc: Linux Kernel Mailing List , Neil Brown , Martin Schwidefsky , stable@kernel.org Subject: Re: Unkillable process in last git -- Bisected Message-ID: <20060628221410.68776a24@localhost> In-Reply-To: <1151521577.10385.3.camel@tribesman.namesys.com> References: <20060628142918.1b2c25c3@localhost> <20060628145349.53873ccc@localhost> <20060628150943.78e91871@localhost> <20060628151955.0acdb39a@localhost> <20060628203825.47790a10@localhost> <1151521577.10385.3.camel@tribesman.namesys.com> X-Mailer: Sylpheed-Claws 2.3.1 (GTK+ 2.8.17; x86_64-pc-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 28 Jun 2006 23:06:17 +0400 "Vladimir V. Saveliev" wrote: > On Wed, 2006-06-28 at 20:38 +0200, Paolo Ornati wrote: > > > Running "localedef" triggers an infinite loop in kernel mode (or > > > something) --> localdef becomes unkillable. > > > > > Can you, please, run localedef under strace -e set=open,write on a > kernel having the below patch applied, so that we will see arguments of > write which caused write to fall into endless loop. The full strace is short enough, I think: $ strace localedef --no-archive -c -i en_US -f ISO-8859-1 -A /usr/share/locale/locale.alias en_US execve("/usr/bin/localedef", ["localedef", "--no-archive", "-c", "-i", "en_US", "-f", "ISO-8859-1", "-A", "/usr/share/locale/locale.alias", "en_US"], [/* 44 vars */]) = 0 uname({sys="Linux", node="tux", ...}) = 0 brk(0) = 0x549000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b0f18098000 access("/etc/ld.so.preload", R_OK) = -1 ENOENT (No such file or directory) open("/etc/ld.so.cache", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=163137, ...}) = 0 mmap(NULL, 163137, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b0f18099000 close(3) = 0 open("/lib/tls/libc.so.6", O_RDONLY) = 3 read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\306"..., 640) = 640 lseek(3, 64, SEEK_SET) = 64 read(3, "\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0"..., 616) = 616 lseek(3, 680, SEEK_SET) = 680 read(3, "\4\0\0\0\20\0\0\0\1\0\0\0GNU\0\0\0\0\0\2\0\0\0\6\0\0\0"..., 32) = 32 fstat(3, {st_mode=S_IFREG|0755, st_size=1268224, ...}) = 0 lseek(3, 64, SEEK_SET) = 64 read(3, "\6\0\0\0\5\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0\0\0\0@\0\0\0\0"..., 616) = 616 mmap(NULL, 2261000, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2b0f1819a000 madvise(0x2b0f1819a000, 2261000, MADV_SEQUENTIAL|0x1) = 0 mprotect(0x2b0f182b9000, 1085448, PROT_NONE) = 0 mmap(0x2b0f183b8000, 24576, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x11e000) = 0x2b0f183b8000 mmap(0x2b0f183be000, 16392, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2b0f183be000 close(3) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b0f183c3000 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b0f183c4000 mprotect(0x2b0f183b8000, 12288, PROT_READ) = 0 mprotect(0x2b0f18198000, 4096, PROT_READ) = 0 arch_prctl(ARCH_SET_FS, 0x2b0f183c3ae0) = 0 munmap(0x2b0f18099000, 163137) = 0 open("/dev/urandom", O_RDONLY) = 3 read(3, "\363\300\254\335\34A\365\327", 8) = 8 close(3) = 0 brk(0) = 0x549000 brk(0x56a000) = 0x56a000 open("/usr/lib64/locale/locale-archive", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/locale/locale.alias", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=2586, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b0f18099000 read(3, "# Locale name alias data base.\n#"..., 4096) = 2586 read(3, "", 4096) = 0 close(3) = 0 munmap(0x2b0f18099000, 4096) = 0 open("/usr/lib64/locale/en_US.utf8/LC_MESSAGES", O_RDONLY) = 3 fstat(3, {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0 close(3) = 0 open("/usr/lib64/locale/en_US.utf8/LC_MESSAGES/SYS_LC_MESSAGES", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=52, ...}) = 0 mmap(NULL, 52, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b0f18099000 close(3) = 0 open("/usr/lib64/gconv/gconv-modules.cache", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=21546, ...}) = 0 mmap(NULL, 21546, PROT_READ, MAP_SHARED, 3, 0) = 0x2b0f1809a000 close(3) = 0 open("/usr/lib64/locale/en_US.utf8/LC_CTYPE", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=208464, ...}) = 0 mmap(NULL, 208464, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b0f180a0000 close(3) = 0 access("/usr/lib64/locale/en_US", W_OK) = 0 open("ISO-8859-1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/i18n/charmaps/ISO-8859-1", O_RDONLY) = -1 ENOENT (No such file or directory) open("/usr/share/i18n/charmaps/ISO-8859-1.gz", O_RDONLY) = 3 fstat(3, {st_mode=S_IFREG|0644, st_size=3150, ...}) = 0 pipe([4, 5]) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 getrlimit(RLIMIT_NOFILE, {rlim_cur=1024, rlim_max=1024}) = 0 clone(child_stack=0, flags=CLONE_CHILD_CLEARTID|CLONE_CHILD_SETTID|SIGCHLD, child_tidptr=0x2b0f183c3b70) = 4258 close(5) = 0 close(3) = 0 fcntl(4, F_GETFL) = 0 (flags O_RDONLY) fstat(4, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0 mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b0f180d3000 lseek(4, 0, SEEK_CUR) = -1 ESPIPE (Illegal seek) read(4, " ISO-8859-1\n