History log of /seL4-test-master/projects/sel4_projects_libs/libsel4vm/src/arch/arm/mem_abort.c
Revision Date Author Comments
# 745291ce 27-Nov-2020 Gerwin Klein <gerwin.klein@data61.csiro.au>

Convert to SPDX license tags

Signed-off-by: Gerwin Klein <gerwin.klein@data61.csiro.au>


# b8ae83dc 26-Feb-2020 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Made 'vm_memory_handle_fault' private

Made the interface function 'vm_memory_handle_fault' a private
function as this is only used internally within libsel4vm.


# c69cd028 13-Dec-2019 Kent McLeod <Kent.Mcleod@data61.csiro.au>

trivial: Style changed files


# 6fdb3a7e 10-Dec-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Revised arm fault types

Added a new field in the arm fault data-structure that
consolidates the different types the fault can represent. This
being a DATA,PREFETCH or VCPU fault. It previously only assumed
the fault could be a data or prefetch fault when advancing or
manipulating the faults state. Updated various function names to
reflect the new types.


# 14b8aaca 09-Nov-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Renamed sel4_arch/vm.h into processor.h

Moved the arm sel4_arch include directory into a higher
level sel4_arch directory. In addition renamed the containing
include 'vm.h' into 'processor.h'. This name more closely aligns
with the contents of the include file.


# 79db7c4f 09-Nov-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Removed unused arm interfaces and defs

Cleaned up various miscellaneous interfaces and definitions that
no longer exist, have been removed or refactored. These items are
no longer used.


# 007de985 09-Nov-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Made arm fault interface private

The arm fault interface is only used internally as external
source uses the vcpu fault interface instead. Moved and
consolidated the fault interface into the internal arm sources.


# efe0d215 01-Nov-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Removed arm 'vm_map_frame'

This function is not necessary as it can be implemented through
the guest memory interface. Removed the implementation from
libsel4vm. As this is the last function in the device interface
we can also delete the interface. Remove includes of device.h
and patch missing includes.


# b83045f8 25-Sep-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Remove fault info in unhandled mem call

Removed fault information parameters in the unhandled memory fault
callback since the callback implementation can now get and set the
necessary data through the vcpu fault interface. Updated usage of
the unhandled memory fault callback to reflect this change.


# 82703e86 25-Sep-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Remove arch_data in mem fault callback

In the mem fault callback interface we replace the passing of the
guest_memory_arch_data interface with the faulting vcpu object.
Since we now have a vcpu fault interface we no longer need to
construct a custom datastructure to pass vcpu fault information.
The callback can rather query the needed information through the
vcpu fault interface. Updated the sources to reflect the interface
change.


# 0cafb22a 24-Sep-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Moved/Refactored device datastructure

Moved the arm device management datastructure that existed in the
arm source out to libsel4vmmplatsupport. Internally we don't need
to use the device datastructure since internal drivers use the
memory interface for registering fault callbacks. The device
datastructure can rather be used as a management utility for
VMM's.


# 2f747a90 05-Sep-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Removed arm ondemand mem fault handling

Removed the ondemand device install functionality out of the
arm page fault handling function. This policy has been moved to
the VMM which can be implemented through the unhandled page fault
callback.


# feeb4d32 05-Sep-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Unhandled arm page faults use callback

Updated the ARM page fault handling to make use of the
unhandled mem fault callback when the fault is left unhandled
after using the reservation interface.


# d7437c3d 15-May-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Enabled vm_run to exit to caller

Introduced vm exit constants that can be used to return to the
library caller (vmm) for handling specific vm exits. Updated the
exit handling functions and vm run loop to handle cases where it
may exit and return an exit reason to the vmm. This is an initial
change that will allow the vm to reduce policy and refactor out
various drivers from the library such that it can be handled and
managed by the vmm.


# 54fc9dfe 14-May-2019 Alison Felizzi <Alison.Felizzi@data61.csiro.au>

libsel4vm: Refactored arm vm event handler

Refactored the arm vm event/exit handler. This refactors the vm
exit handler code into a series of individual handlers for the
various vm exit cases. The overall intention with these changes
is to make the vm exit handler more modular and to reduce the
complexity of the vm_run function.