On Thu, 2006-04-27 at 12:21 -0400, Dave Anderson wrote:
Badari,
What happens when you disassemble sys_read() on a live
system running that particular kernel? Use "dis sys_read" as the
crash command.
Thanks,
Dave
Dave,
crash shows wrong dis-assembly for even live machine...
Thanks,
Badari
elm3a242:~/crash-4.0-2.23 # ./crash /usr/src/linux/vmlinux
crash 4.0-2.23
Copyright (C) 2002, 2003, 2004, 2005, 2006 Red Hat, Inc.
Copyright (C) 2004, 2005, 2006 IBM Corporation
Copyright (C) 1999-2006 Hewlett-Packard Co
Copyright (C) 2005 Fujitsu Limited
Copyright (C) 2005 NEC Corporation
Copyright (C) 1999, 2002 Silicon Graphics, Inc.
Copyright (C) 1999, 2000, 2001, 2002 Mission Critical Linux, Inc.
This program is free software, covered by the GNU General Public
License,
and you are welcome to change it and/or distribute copies of it under
certain conditions. Enter "help copying" to see the conditions.
This program has absolutely no warranty. Enter "help warranty" for
details.
GNU gdb 6.1
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you
are
welcome to change it and/or distribute copies of it under certain
conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for
details.
This GDB was configured as "x86_64-unknown-linux-gnu"...
SYSTEM MAP: /usr/src/linux/System.map
DEBUG KERNEL: /usr/src/linux/vmlinux (2.6.16-20-smp)
DUMPFILE: /dev/mem
CPUS: 2
DATE: Thu Apr 27 02:06:52 2006
UPTIME: 16:29:16
LOAD AVERAGE: 0.07, 0.02, 0.00
TASKS: 64
NODENAME: elm3a242
RELEASE: 2.6.16-20-smp
VERSION: #1 SMP Mon Apr 10 04:51:13 UTC 2006
MACHINE: x86_64 (3000 Mhz)
MEMORY: 4.6 GB
PID: 12798
COMMAND: "crash"
TASK: ffff8101235e37d0 [THREAD_INFO: ffff810118742000]
CPU: 0
STATE: TASK_RUNNING (ACTIVE)
crash> dis sys_read
0xffffffff8017b991 <sys_read>: add %cl,0xffffffffffffff83(%rax)
0xffffffff8017b994 <sys_read+3>: (bad)
0xffffffff8017b995 <sys_read+4>: sbb %cl,0xffffffffffffff89(%
rax)
0xffffffff8017b998 <sys_read+7>: callq 0xffffffffdc5916f8
0xffffffff8017b99d <sys_read+12>: pop %r13
0xffffffff8017b99f <sys_read+14>: retq
0xffffffff8017b9a0 <sys_read+15>:
mov 1862306(%rip),%eax # 0xffffffff80342448 <files_stat+8>
0xffffffff8017b9a6 <sys_read+21>: retq
0xffffffff8017b9a7 <sys_read+22>: push %rbx
0xffffffff8017b9a8 <sys_read+23>: cmp %rdi,(%rdi)
0xffffffff8017b9ab <sys_read+26>: mov %rdi,%rbx
0xffffffff8017b9ae <sys_read+29>: je 0xffffffff8017b9db
<sys_read+74>
0xffffffff8017b9b0 <sys_read+31>: mov $0xffffffff80456b80,%rdi
0xffffffff8017b9b7 <sys_read+38>:
callq 0xffffffff802d0aad <__down_interruptible+75>
0xffffffff8017b9bc <sys_read+43>: mov (%rbx),%rdx
0xffffffff8017b9bf <sys_read+46>: mov 0x8(%rbx),%rax
0xffffffff8017b9c3 <sys_read+50>: mov %rax,0x8(%rdx)
0xffffffff8017b9c7 <sys_read+54>: mov %rdx,(%rax)
0xffffffff8017b9ca <sys_read+57>: mov %rbx,0x8(%rbx)
0xffffffff8017b9ce <sys_read+61>: mov %rbx,(%rbx)
0xffffffff8017b9d1 <sys_read+64>: