History log of /seL4-camkes-master/kernel/src/arch/arm/32/object/objecttype.c
Revision Date Author Comments
# 7d91ce8e 22-Nov-2020 Siwei Zhuang <siwei.zhuang@data61.csiro.au>

arm: give away FPU on thread delete

The ownership of FPU would only be updated when a thread causes FPU
exception. If the thread being deleted owns the FPU, the ownership needs
to be given away proactively to avoid memory corruption.

Reported-by: Rafal Kolanski <rafal.kolanski@data61.csiro.au>
Signed-off-by: Siwei Zhuang <siwei.zhuang@data61.csiro.au>


# a00c2c16 17-Sep-2020 Curtis Millar <curtis.millar@data61.csiro.au>

Make kernel log buffer derived from cmake config

This removes the explicit CMake configuration for the kernel log buffer
and replaces it with a #define that is enabled for the required
configurations.

Signed-off-by: Curtis Millar <curtis@curtism.me>


# 1a9756f6 09-Sep-2019 Qian Ge <qian.ge@data61.csiro.au>

SMMU: basic driver for init and probing

Introducing the driver in kernel for detecting SMMU features
and initialise the hardware.

Signed-off-by: Oliver Scott <Oliver.Scott@data61.csiro.au>


# 79da0792 01-Mar-2020 Gerwin Klein <gerwin.klein@data61.csiro.au>

Convert license tags to SPDX identifiers

This commit also converts our own copyright headers to directly use
SPDX, but leaves all other copyright header intact, only adding the
SPDX ident. As far as possible this commit also merges multiple
Data61 copyright statements/headers into one for consistency.


# 306453e3 18-Mar-2019 Anna Lyons <Anna.Lyons@data61.csiro.au>

style: set min-conditional-indent to 0

Given we use braces all the time conditional indents do not make code
cleaner.


# d0930f67 18-Mar-2019 Anna Lyons <Anna.Lyons@data61.csiro.au>

style: consistently attach return type

Add attach-return-type to astyle


# 3d10ef0c 18-Mar-2019 Anna Lyons <Anna.Lyons@data61.csiro.au>

style: correct parenthesis padding

Use astyle's unpad-paren to unpad all parentheses that are not included
by pad-header, pad-oper, and pad-comma.


# 2cfff40d 04-Feb-2018 Adrian Danis <Adrian.Danis@data61.csiro.au>

Allow Arch_finaliseCap to return cleanup information

Changes Arch_finaliseCap and Mode_finaliseCap to return the same finaliseCap_ret_t type
as finaliseCap. This allows the Arch and Mode specific functions to define cleanup
information of its capabilities if necessary, just like the generic capabilities can
in finaliseCap.


# 0a6f9a5d 14-Mar-2017 Hesham Almatary <hesham.almatary@data61.csiro.au>

SELFOUR-748: ARM - Support local/remote TLB invalidation operations


# 353f0574 23-Apr-2017 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm: Pass 'call' down to invokeVCPUReadReg

invokeVCPUReadReg should not be setting message registers for the return message unless
the user performed a call. In doing so we must refactor the call to readVCPUReg to
outside the introduced `if` condition since, as it performs machine operations, it
should always happen


# 9224b837 10-Apr-2017 Miki Tanaka <miki.tanaka@nicta.com.au>

arm hyp: update AUXUPD for ARM_HYPERVISOR_SUPPORT


# ab080c2e 09-Apr-2017 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm: Remove redundant memzero

Zeroing of memory was previously removed from being done on creation of each
object, to doing initial zeroing of whole untyped. The VCPU and IOPageTable
objects were evidently missed in the original change.


# de6d4772 30-Mar-2017 Rafal Kolanski <rafal.kolanski@nicta.com.au>

rename arch_tcb.vcpu -> arch_tcb.tcbVCPU, vcpu.tcb -> vcpu.vcpuTCB

struct vcpu { struct tcb* tcb; ...
struct arch_tcb { struct vcpu* vcpu; ...
and
struct tcb { struct arch_tcb tcbArch; ...

These conspire to generate a type error on verification side due to
assumptions about non-colliding names.


# 2fea9a0f 18-Jul-2016 Anna Lyons <Anna.Lyons@nicta.com.au>

SELFOUR-567: use seL4_CapRights_t from libsel4

This change

* changes seL4_CapRights from the kernel to be seL4_CapRights_t in
libsel4
* deprecates the duplicated seL4_CapRights in libsel4, which is
now the bitfield generated type seL4_CapRights_t.
* fixes all usages in kernel and libsel4

Impact: for verification, this will require the type to change name
from cap_rights to seL4_CapRights_t.
This is a breaking libsel4 API change, although most code uses
seL4_AllRights or similar constants, which will not break
at a source level as these constants have been updated.


# 31628d9a 25-Oct-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

Remove recycle

Removes the recycle operation and adds an operation
to cancel any badged sends on and endpoint. Calling
Revoke + CancelBadgedSend is equivalent to Recycle
on a badged endpoint


# 03c71b63 16-May-2016 Thomas Sewell <Thomas.Sewell@nicta.com.au>

SELFOUR-444: Preemptible zeroing for retype.

Change to the order of operations and timing behaviour of
invokeUntyped_Retype. The Retype operation now zeroes the
entire range of the Untyped cap (if it is being used for
the first time) before installing any objects. This avoids
the need for long-running initialisation of large objects,
whose initial contents are always zero. The initial zeroing
phase is preemptible, and may take multiple timeslices to
complete.


# bdd9beff 22-Sep-2016 Bamboo <bamboo@keg.ertos.in.nicta.com.au>

[STYLE_FIX]


# 59aa0ccd 30-Aug-2016 Xin,Gao <xin.gao@nicta.com.au>

SELFOUR-421: minor changes for c-refine


# 1ec7ce86 01-Mar-2016 Joel Beeren <joel.beeren@nicta.com.au>

SELFOUR-421: fix up boolean equality in Arch_sameObjectAs


# 2ffb8d00 28-Feb-2016 Joel Beeren <joel.beeren@nicta.com.au>

SELFOUR-421: added device check to sameObjectAs


# 2d74ae7e 12-Apr-2016 Joel Beeren <joel.beeren@nicta.com.au>

SELFOUR-421: Arch_createObject changed to use new user_data_device in ghostupdates for device pages


# d507b2d3 09-Feb-2016 Adrian Danis <Adrian.Danis@nicta.com.au>

SELFOUR-421 Introduce explicit device frames and untypeds

Kernel objects cannot be created from device untypeds, with the
exception of frames, which do not get zeroed and cannot be used
as an IPC buffer. Device untypeds additionally cannot be used
in the construction of ASID pools.

This then changes the API to the rootserver (i.e. bootinfo) to
send device untypeds instead of device frames. On ARM these
device untypeds are the same as the previously exported device
frame regions. On x86 PCI scanning is removed and all physical
memory addresses (that are not important for kernel integrity)
are released to the user.

In order to have bits in the frame and untyped caps on ARM the
number of software ASIDs had to be reduced from 2^18 to 2^17,
and the maximum untyped size reduced from 2^31 to 2^30


# 35c50cfd 29-Aug-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

SELFOUR-556: Rationalize BITS vs INDEX_BITS

s/PD_BITS/PD_INDEX_BITS
Current convention is to say that X_BITS is the log base 2
size of an object, not the log base 2 number of indices


# f251953f 29-Aug-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

SELFOUR-556: Rationalize BITS vs INDEX_BITS

s/PT_BITS/PT_INDEX_BITS
Current convention is to say that X_BITS is the log base 2
size of an object, not the log base 2 number of indices


# 16c34811 31-Jul-2016 Hesham Almatary <hesham.almatary@data61.csiro.au>

SELFOUR-518: User-level log buffer

Remove global ksLog and use KS_LOG_PPTR instead

Benchmark - Log buffer: use global page table


# 8e0315f4 26-Jul-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

SELFOUR-551: Standardize VCPU capitalization

For acronyms seL4 other does CAPS or caps, this changes some functions
that were doing Caps


# a185335e 25-Jul-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

SELFOUR-551: Swap argument order of [di|a]ssociateVcpuTcb

Attempts to create some consistently across other functions that have
VCPU first in the name and also VCPU first in the argument list


# 2f163e27 11-Jul-2016 Hesham Almatary <hesham.almatary@data61.csiro.au>

astyle: Make comments compatible with both 2.03 and 2.04 astyle versions


# 75299d05 08-Jul-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

SELFOUR-557: s/isIOSpaceFrame/isIOSpaceFrameCap/


# 06645e8b 20-Jun-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

trivial: style


# 11c665f5 15-Jun-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm-hyp: Hide more definitions


# 89a046f4 14-Jun-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm-hyp: Hide calls to isIOSpaceFrame


# 624bdf72 08-Jun-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm-hyp: Pander to the C parser

The C parser will not accept a switch statement that just has a
default case. This change adds some more pre-processor gymnastics
to hide the 'switch' if it would result in this case.


# 48555c38 07-Jun-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm-hyp: Hide iospace caps being #ifdef

These cap type existing, even if unused, break the original verification


# 5f0ae410 02-Jun-2016 Adrian Danis <Adrian.Danis@data61.csiro.au>

arm-hyp: Minor cleanups

Cleanup some small licensing, whitespace and configuration details


# 55f8b144 26-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm-hyp/tk1: address review comments.


# 27ecdffe 26-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm-hyp/tk1: address review comments.


# 5650a8fa 25-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm-hyp/tk1: make style


# 11720f23 19-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm-hyp/tk1: fix bugs found during testing


# a861e135 18-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm-hyp/tk1: add the missing return


# 508e8747 16-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm/tk1: connect objects with SMMU invocations


# 879d9724 13-May-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

arm/tk1: a checkpoint for SMMU implementation


# 69b7e077 25-Feb-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

trivial: make style with astyle 2.03


# 9d12a096 25-Feb-2016 Yanyan Shen <yanyan.shen@nicta.com.au>

trivial: make style commit


# cfcaf49c 31-Jan-2016 Adrian Danis <Adrian.Danis@nicta.com.au>

SELFOUR-399: object sizes and globals frame addr should come from the same source


# 86942825 15-Jan-2016 amrzar <azarrabi@nicta.com.au>

Rearranging sources for aarch32 to 32/*