Re: Someone needs to fix pagefault handling

Frank Wille <[email protected]> Sat, 28 Mar 2015 14:51:20 +0100
Newsgroups gmane.os.netbsd.ports.powerpc
Organization Privates Internet Ostwestfalen/Lippe e.V.
Message-ID <[email protected]>
On Sun, 15 Mar 2015 01:54:17 +0100
Frank Wille <[email protected]> wrote:

> I implemented it now for user data and instruction accesses, as I
> understand you that SIGBUS is only needed for userland and not for the
> kernel.
> 
> The following patch was successfully tested on NetBSD/sandpoint (Kurobox,
> PPC 8241):
> [...]

Although it seems to work I will not commit it before I (or somebody else?)
can answer these open questions:

- DSI (data access fault): Is it really required to check the DSISR register
  to be able to differentiate between a SEGV_ACCERR or SEGV_MAPERR ksi_code?
  Or can I rely on the return value EACCESS from uvm_fault() instead?

- ISI (instruction access fault): Is EINVAL relevant for instruction access
  faults at all? If yes: does uvm_fault()=ENOMEM happen here as well?

-- 
Frank Wille