kernel BUG at mm/mmap.c:1990

Helge Deller <[email protected]>
Newsgroups gmane.linux.ports.hppa
Message-ID <[email protected]>
Maybe someone has an idea ?

The "adjtimex02" test from the Linux Test Project (http://ltp.sf.net) seems to pass all test, but triggers a kernel BUG in mm/mmap.c:1990 when exiting.
strace is attached below.


kernel BUG at mm/mmap.c:1990!

     YZrvWESTHLNXBCVMcbcbcbcbOGFRQPDI
PSW: 00000000000001101111111100001011 Not tainted
r00-03  0006ff0b 105a6810 10123e10 776a33a0
r04-07  00000000 776a33a0 00000000 0002695e
r08-11  bff5200a 0004b6d8 0004b6d8 0004b6d8
r12-15  00050ed8 00050ed8 0004b6d8 00050ed8
r16-19  bff527d8 0004b6d8 0004b6d8 00000001
r20-23  00000036 00000035 0000000b 00000000
r24-27  000000e2 8713eb00 10642cc0 104e6010
r28-31  00000000 00100277 7a480200 1016e564
sr00-03  00000000 00000000 00000000 00005040
sr04-07  00000000 00000000 00000000 00000000

IASQ: 00000000 00000000 IAOQ: 1015dc30 1015dc34
 IIR: 03ffe01f    ISR: 10240001  IOR: 8ea3ac00
 CPU:        0   CR30: 7a480000 CR31: 105d0000
 ORIG_R28: 00000000
 IAOQ[0]: exit_mmap+0x130/0x14c
 IAOQ[1]: exit_mmap+0x134/0x14c
 RP(r2): mmput+0x54/0xd0
Fixing recursive fault but reboot is needed!



root@c3000:~/ltp-full-20061121/testcases/kernel/syscalls/adjtimex# strace -f ./adjtimex02 2>&1 | tee strace.log
execve("./adjtimex02", ["./adjtimex02"], [/* 17 vars */]) = 0
newuname({sys="Linux", node="c3000", ...}) = 0
brk(0)                                  = 0x2c000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40000000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/opt/kde3/qt/lib/PARISC/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/kde3/qt/lib/PARISC", 0xc05d5488) = -1 ENOENT (No such file or directory)
open("/opt/kde3/qt/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/kde3/qt/lib", {st_mode=0, st_size=0, ...}) = 0
open("/opt/kde3/lib/PARISC/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/kde3/lib/PARISC", 0xc05d5488) = -1 ENOENT (No such file or directory)
open("/opt/kde3/lib/libc.so.6", O_RDONLY) = -1 ENOENT (No such file or directory)
stat64("/opt/kde3/lib", {st_mode=0, st_size=0, ...}) = 0
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat64(3, {st_mode=0, st_size=0, ...}) = 0
mmap(NULL, 67082, PROT_READ, MAP_PRIVATE, 3, 0) = 0x40214000
close(3)                                = 0
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\1\2\1\3\0\0\0\0\0\0\0\0\0\3\0\17\0\0\0\1\0\1\364"..., 512) = 512
fstat64(3, {st_mode=0, st_size=0, ...}) = 0
mmap(NULL, 1364696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x405c3000
mprotect(0x406f3000, 119512, PROT_NONE) = 0
mmap(0x40702000, 53248, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x12f000) = 0x40702000
mmap(0x4070f000, 4824, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x4070f000
close(3)                                = 0
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40001000
munmap(0x40214000, 67082)               = 0
brk(0)                                  = 0x2c000
brk(0x4d000)                            = 0x4d000
geteuid()                               = 0
rt_sigaction(SIGHUP, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGILL, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTRAP, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGABRT, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGEMT, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGFPE, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGBUS, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGSEGV, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGSYS, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGALRM, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGUSR1, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGUSR2, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGCHLD, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPWR, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGVTALRM, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPROF, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGIO, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGWINCH, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTSTP, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTIN, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTOU, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGURG, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGLOST, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGUNUSED, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIG_32, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGXCPU, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGXFSZ, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIG_35, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGSTKFLT, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGRT_16, {0x26866, [], SA_RESTART}, {SIG_DFL}, 8) = 0
adjtimex({modes=0, offset=0, freq=0, maxerror=16384000, esterror=16384000, status=64, constant=2, precision=1, tolerance=33554432, time={1165876228, 740054}}) = 5
adjtimex(0xffffffff)                    = -1 EFAULT (Bad address)
fstat64(1, {st_mode=0, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x40003000
adjtimex(0x26ae4)                       = -1 EINVAL (Invalid argument)
adjtimex(0x26ae4)                       = -1 EINVAL (Invalid argument)
adjtimex(0x26ae4)                       = -1 EINVAL (Invalid argument)
adjtimex(0x26ae4)                       = -1 EINVAL (Invalid argument)
socket(PF_FILE, SOCK_STREAM, 0)         = 3
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = 0
poll([{fd=3, events=POLLOUT|POLLERR|POLLHUP, revents=POLLOUT}], 1, 5000) = 1
writev(3, [{"\0\0\0\2\0\0\0\v\0\0\0\7", 12}, {"passwd\0", 7}], 2) = 19
poll([{fd=3, events=POLLIN|POLLERR|POLLHUP, revents=POLLIN|POLLHUP}], 1, 5000) = 1
recvmsg(3, {msg_name(0)=NULL, msg_iov(1)=[{"passwd\0", 7}], msg_controllen=16, {cmsg_len=16, cmsg_level=SOL_SOCKET, cmsg_type=SCM_RIGHTS, {4}}, msg_flags=0}, MSG_NOSIGNAL) = 7
fstat64(4, {st_mode=0, st_size=0, ...}) = 0
pread(4, "\0\0\0\1\0\0\0h\0\0\0\320\0\0\0\0\0\0\0\0E}\255B\0\0\0"..., 104, 0) = 104
time(NULL)                              = 1165876228
close(4)                                = 0
close(3)                                = 0
socket(PF_FILE, SOCK_STREAM, 0)         = 3
fcntl64(3, F_GETFL)                     = 0x2 (flags O_RDWR)
fcntl64(3, F_SETFL, O_RDWR|O_NONBLOCK)  = 0
connect(3, {sa_family=AF_FILE, path="/var/run/nscd/socket"}, 110) = 0
poll([{fd=3, events=POLLOUT|POLLERR|POLLHUP, revents=POLLOUT}], 1, 5000) = 1
writev(3, [{"\0\0\0\2\0\0\0\0\0\0\0\7", 12}, {"nobody\0", 7}], 2) = 19
poll([{fd=3, events=POLLIN|POLLERR|POLLHUP, revents=POLLIN|POLLHUP}], 1, 5000) = 1
read(3, "\0\0\0\2\0\0\0\1\0\0\0\7\0\0\0\2\0\0\377\376\0\0\377\376"..., 36) = 36
read(3, "nobody\0x\0nobody\0/nonexistent\0/bi"..., 37) = 37
close(3)                                = 0
setresuid(-1, 65534, -1)                = 0
adjtimex(0x26ae4)                       = -1 EPERM (Operation not permitted)
setresuid(-1, 0, -1)                    = 0
adjtimex({modes=16447, offset=0, freq=0, maxerror=16384000, esterror=16384000, status=64, constant=2, precision=1, tolerance=33554432, time={1165876228, 755765}}) = 5
write(1, "adjtimex02    1  PASS  :  Test P"..., 461adjtimex02    1  PASS  :  Test Passed, adjtimex() returned -1 with errno: 14
adjtimex02    2  PASS  :  Test Passed, adjtimex() returned -1 with errno: 22
adjtimex02    3  PASS  :  Test Passed, adjtimex() returned -1 with errno: 22
adjtimex02    4  PASS  :  Test Passed, adjtimex() returned -1 with errno: 22
adjtimex02    5  PASS  :  Test Passed, adjtimex() returned -1 with errno: 22
adjtimex02    6  PASS  :  Test Passed, adjtimex() returned -1 with errno: 1
) = 461
munmap(0x40003000, 4096)                = 0
exit_group(0)                           = ?
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.