Please, don't top-post. On Thu, Aug 04, 2005 at 01:45:41 +0000, Vincenzo Mallozzi wrote: > I forgot that there's another message printed in Oops. It is the following: > > Code: Bad EIP value > <0> Kernel Panic: Aiee, Killing Interrupt Handler! > In Interrupt handler - not syncing Yes, that's fully expected. When an interrupt handler causes a memory fault, the kernel has no way but to panic. If the fault was in process context, it would just kill that process, but there is no way to recover from interrupt. Anyway, is that all? Isn't there a backtrace and register dump too? > Alle 22:59, mercoled? 3 agosto 2005, Vincenzo Mallozzi ha scritto: > > Hi all, > > in LKM I've implemented, I hijack the page fault handler with a function > that > > first scans a list created by me and then call the original page fault > > handler. > > > > Now, the problem is that when I scan this list from within functions > different > > from the one that hijack the page fault handler, all the elements of the > list > > are printed. > > But, when I try to scan this list from within the exception handler > hijacked, > > only the first three elements are printed and then an Oops message is > > printed. > > > > The Oops is something like this: > > > > Unable to handle NULL pointer dereference at virtual address 00000000. I'd expect this message is clear enough. You tried to access value at address 0 (NULL) somewhere. Though, it is the page fault handler that detects this problem, so it may be a problem with how you hijack it. As a side note: I hope you use the macros in linux/list.h, so it's not a stupid thinko in the list walking code somewhere. ------------------------------------------------------------------------------- Jan 'Bulb' Hudec <bulb@xxxxxx>
Attachment:
signature.asc
Description: Digital signature