Hello, the commit "x86: optimize page faults like all other achitectures and kill notifier cruft" by Christoph Hellwig removed the page fault notifiers (e.g. register_page_fault_notifier()) completely in 2.6.24. Mmio-trace [1] is using them for tracking memory mapped IO, and also other people have mentioned they need it [2,3].
This is roughly how I understand mmio-trace is working. In a loadable kernel module calls to __ioremap() are diverted to an mmio-trace specific function. The function calls the real __ioremap() and marks the returned pages as not present. Access to the mapped IO memory causes a page fault. Mmio-trace's page fault handler marks the page present, records the event, single-steps the faulting instruction, and finally marks the page as not present again. - Is there anything coming to replace register_page_fault_notifier()? - Has someone found another way to accomplish the same without patching the kernel? - Should I start writing a patch to bring back the notifiers, based on the commit that removed them? People started to complain to me that mmio-trace does not compile for 2.6.24. At least the Nouveau project is a regular user of mmio-trace for reverse-engineering, and the tool should be easy to use. Therefore I would prefer not to force casual contributors to patch their kernels as it might be too much for some. I am hoping that 2.6.25, if not 2.6.24, would contain a mechanism to accomplish what I need. I am not a subscriber, so please keep me in CC. Also I CC'd the people who wrote about the same issue in the past. Thanks. [1] http://nouveau.freedesktop.org/wiki/MmioTrace [2] http://marc.info/?l=linux-kernel&m=119540769014745&w=2 [3] http://article.gmane.org/gmane.linux.kernel/609521 -- Pekka Paalanen http://www.iki.fi/pq/ -- 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/