Kris Corwin wrote: > > First, is the vmlinuz that the kernel is running created from the ./vmlinux > > file that you're using as an argument? > > yes. > > > I'm guessing that it continued on and complained > > about not being able to read the the linux_banner string, and then died? > > crash exited right after what I posted. > > I can run crash on 2.6.9-11 kernels, but not 2.6.9-22. > > Here's the -d run. It looks like I have a memory read issue. > > [root@f14 linux-2.6.9-22.0.2.EL]# crash -d7 ./vmlinux > > crash 4.0-2 > Copyright (C) 2002, 2003, 2004, 2005 Red Hat, Inc. > Copyright (C) 2004, 2005 IBM Corporation > Copyright (C) 1999-2005 Hewlett-Packard Co > 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. > > get_live_memory_source: /dev/mem > /proc/version: > Linux version 2.6.9-prep.qp2.2.5.11.3qsnet (root@f15) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-20)) #3 SMP Tue Feb 21 15:12:39 EST 2006 > ./vmlinux: > Linux version 2.6.9-prep.qp2.2.5.11.3qsnet (root@f15) (gcc version 3.2.3 20030502 (Red Hat Linux 3.2.3-20)) #3 SMP Tue Feb 21 15:12:39 EST 2006 > <readmem: c0153373, KVADDR, "x86_omit_frame_pointer", 4, (ROE), bff71420> > /dev/mem: Operation not permitted > crash: read(/dev/mem, 153373, 0): 4 (ffffffff) > crash: read error: kernel virtual address: c0153373 type: "x86_omit_frame_pointer" > <readmem: c0439d10, KVADDR, "xtime", 8, (FOE), 8349634> > /dev/mem: Operation not permitted > crash: read(/dev/mem, 439d10, 0): 8 (ffffffff) > crash: read error: kernel virtual address: c0439d10 type: "xtime" > [root@f14 linux-2.6.9-22.0.2.EL]# whoami > root > [root@f14 linux-2.6.9-22.0.2.EL]# ls -l /dev/mem > crw-r----- 1 root kmem 1, 1 Feb 22 06:31 /dev/mem Ok, a couple of things. Red Hat kernels have restricted /dev/mem drivers which only allow reads of the first 1MB of physcal address space. For that reason RHEL (and Fedora) kernels have an additional /dev/crash driver (in ./drivers/char/crash.c) that replaces /dev/mem. It's a "misc" driver, only used for x86 and x86_64 kernels, and is dynamically modprobe'd by crash. The debug output from your crash session attempt shows two things of interest: > get_live_memory_source: /dev/mem so the /dev/crash driver is not available from that kernel, which is the second point of interest: > /proc/version: > Linux version 2.6.9-prep.qp2.2.5.11.3qsnet (root@f15)... So the question is whether the mem.c driver in that kernel is based upon the Red Hat restricted mem.c, or is restricted otherwise. AFAIK, the upstream drivers/char/mem.c does not return EPERM from its read_mem() function. > /dev/mem: Operation not permitted but the restricted Red Hat mem.c does. In any case, it all comes down to why /dev/mem is not allowing read attempts. Dave