On Saturday 21 February 2009 10:10:56 David Christensen wrote: > I'm sure this is a simple question but the answer is alluding my Google eluding -^ > search capabilities. My driver is being loaded as a kernel module and > is failing with the following error: > > Fatal trap 12: page fault while in kernel mode > cpuid = 0; apic id = 00 > fault virtual address = 0xfffffffe40abe9dc > fault code = supervisor write data, page not present > instruction pointer = 0x8:0xffffffff920b638f > stack pointer = 0x10:0xffffffff9212bb10 > frame pointer = 0x10:0xffffffff9212bbb0 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, long 1, def32 0, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 12 (irq268: bce0) > [thread pid 12 tid 100166 ] > Stopped at bce_intr+0x8df: addl $0x1,0x2c854(%r12,%rax,4) > db> > > I simply need to find the offending source line in my driver. Not sure > how I've managed to get the driver running at all without this but it's > time to do things the right way. I have KDB/DDB/GDB built into my > -CURRENT kernel already. It'd be great to find the source line while in > the kernel debugger but I'm also fine with rebooting the system to > identify the line number. DDB doesn't understand debugging symbols to that degree, however you could connect a GDB remotely using a serial or firewire connection (the later is much, much nicer) I imagine you could get GDB or some other tool to tell you what line that offset corresponds to but I'm not sure how you go about doing that with modules loaded unless you have a crash dump (or remote GDB on a live system) I guess you could also rebuild your .c files with.. -Wa,-adhlmsn=$foo.lst and look it up that way. -- Daniel O'Connor software and network engineer for Genesis Software - http://www.gsoft.com.au "The nice thing about standards is that there are so many of them to choose from." -- Andrew Tanenbaum GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:42 UTC