On Wed, Apr 03, 2002 at 09:49:07AM +0200, Laurent Pinchart wrote:
Hi everybody,
I need to implement the SharedUserData, which is a page of memory located at (KERNEL_BASE - 0x10000) shared between user space (read-only access) and kernel space.
I don't know how to get the 'page fault' trap for a 'valid' user page on all systems that wine might run on. Certainly the assumption that (KERNEL_BASE - 0x10000) is available is probably false...
However you don't actually need a valid user address, a kernel address (ie one that is always invalid) will do. Catching SIGSEGV might be enough - but I'm not totally certain how you can get the value back into the main process context (emulate the instruction and modify the saved program counter ????)
David