
Now the handler receives 'rw' (BX_READ, BX_WRTE, BX_EXECUTE) access type as parameter. If returning a pointer to <addr> - itr is assumed that whole 4K page containing the <addr> could be accessed using the same pointer with offset. You can return a pointer for READ/WRITE only and disallow execute, this is handled properly in the CPU code.