On Sun, 18 Nov 2007 12:40:16 -0500 Pavel Roskin <[EMAIL PROTECTED]> wrote:
> Hello! > > I'm trying to update a special tracing version of madwifi (driver for > Atheros wireless cards) for Linux 2.6.24. This version was created to > help reverse engineering the non-free part of the driver (also known > as HAL, hardware abstraction layer). > > The problem is that functions register_page_fault_notifier() and > unregister_page_fault_notifier() are gone in the current kernel git > repository. > > They are needed to intercept access to the card by causing page fault > and intercepting it. > > Those functions were removed on i386 platform because kprobes now > registers the flat handler directly. The log says that other callers > are supposed to use kprobes now. > > But what would be the right way to do it? I can intercept > do_page_fault() with kprobes, but that looks unsafe, since > do_page_fault() is used by kprobes internally. > > Or maybe I should install a fault handler with register_kprobe()? The > problem is, it is only called for faults in kp->pre_handler and > kp->post_handler and for single-stepping. I don't want to single-step > anything, and moving all driver functionality in kp->pre_handler would > be strange. > > Perhaps I'm missing something obvious. Any help will be appreciated. > if it's just for a custom case (as it sounds like).. a simple small change to the pagefault handler sounds like the easiest thing to do... (eg just a direct function call to what would have been your notifier) -- If you want to reach me at my work email, use [EMAIL PROTECTED] For development, discussion and tips for power savings, visit http://www.lesswatts.org - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/