-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implementation of batch vspace operations #6
base: master
Are you sure you want to change the base?
Commits on Apr 10, 2023
-
bitfield_gen: comment for original source file
Add a `--form_file <file>` option to the bitfield generator for printing a `/* generated from <file> */` message in a comment. Use this option in cmake to provide the original source .bf file before preprocessing so it's easier to find out where the corresponding definitions are. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 57c46bc - Browse repository at this point
Copy the full SHA 57c46bcView commit details
Commits on Apr 12, 2023
-
Mention that it can be Ok for regions to overflow. State explicitly that the end is exclusive. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 51966d4 - Browse repository at this point
Copy the full SHA 51966d4View commit details -
boot: document why region overflow is allowed
Document in `create_untypeds_for_region` what makes region overflow for device untypeds work. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 55094c6 - Browse repository at this point
Copy the full SHA 55094c6View commit details -
machine: compile time checks for multikernel
Add compile time checks for conditions on physBase that are necessary for verification of multikernel builds to succeed -- if these fail, the proofs will fail. If these succeed, and nothing else has changed compared to a verified kernel other than physBase, then the proofs will succeed. This does not mean that all platform requirements are validated, it just means that all requirements for the proofs to be consistent are met. The conditions correspond to those in spec/machine/*/Arch_Kernel_Config_Lemmas.thy in the verification repository. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ca1d5f9 - Browse repository at this point
Copy the full SHA ca1d5f9View commit details
Commits on Apr 13, 2023
-
boot: sanity checks for provide_untyped_cap (seL4#1006)
* boot: sanity checks for provide_untyped_cap Check arguments for alignment, size, and kernel window (if not device untyped). This provides sanity checks in case any of the memory region computations are wrong. Since this code is not performance critical and can return failure, these are not assertions, but normal conditions with user feedback. I.e. they are on in release and verified configurations. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fb808f0 - Browse repository at this point
Copy the full SHA fb808f0View commit details
Commits on Apr 14, 2023
-
gic_v3: fix offset for gicd iroutern mem-map reg
GICD_IROUTERn is at the offset 0x6100 for SPI 32. SGIs and PPIs do not have a target since they are private to CPUs. Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a7845d2 - Browse repository at this point
Copy the full SHA a7845d2View commit details
Commits on Apr 17, 2023
-
boot: add missing line break in error messages
Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 62dccc9 - Browse repository at this point
Copy the full SHA 62dccc9View commit details
Commits on Apr 23, 2023
-
gcc.cmake: add more known ARM cross compilers
These are the prefixes used by the official Arm GNU Toolchain [1] It would be convenient if seL4 would recognise it out of the box. [1] https://developer.arm.com/downloads/-/arm-gnu-toolchain-downloads Signed-off-by: Mathieu Mirmont <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 729cc7f - Browse repository at this point
Copy the full SHA 729cc7fView commit details -
arm64: add required isb() between AT and PAR inst
- "When an address translation instruction is executed, explicit synchronization is required to guarantee the result is visible to subsequent direct reads of PAR_EL1." Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a4b5917 - Browse repository at this point
Copy the full SHA a4b5917View commit details -
ipi: add missing barrier and enforce completion
- dmb() no longer works for GICv3, and consequently a stronger barrier like dsb() has to be used. A weaker variant of dsb is used to ensure the observability of complete stores in the same inner-shareable domain. Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b8f1753 - Browse repository at this point
Copy the full SHA b8f1753View commit details -
risc-v/hifive: adapt to post-v0.9 OpenSBI
Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 9b039f8 - Browse repository at this point
Copy the full SHA 9b039f8View commit details -
boot/risc-v: improve SMP boot documentation
Improve the documentation to describe about the potential pitfall in SMP boot and the non-recommended barrier that is used. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for cd1fbaf - Browse repository at this point
Copy the full SHA cd1fbafView commit details -
boot/arm: invert conditional code check on SMP
The cache maintenance is needed on AARCH32, so check explicitly for this architecture instead of doing this everywhere except AARCH64. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7988b9b - Browse repository at this point
Copy the full SHA 7988b9bView commit details -
boot/risc-v: avoid uncommon fence usage
Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 55dc30b - Browse repository at this point
Copy the full SHA 55dc30bView commit details
Commits on Apr 24, 2023
-
python: include sel4/config.h and not autoconf.h
Include sel4/config.h instead of autoconf.h in the generated code. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8eec7ad - Browse repository at this point
Copy the full SHA 8eec7adView commit details -
libsel4: use sel4/config.h instead of autoconf.h
Make sel4/config.h the only file to eventually include autoconf.h Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4d1da10 - Browse repository at this point
Copy the full SHA 4d1da10View commit details -
python: include config.h first in generated files
Including the configuration first ensure consistent behavior. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 525d14c - Browse repository at this point
Copy the full SHA 525d14cView commit details
Commits on Apr 25, 2023
-
trivial: Fix typo of UCT bit in SCTLR_EL1
Signed-off-by: Kent McLeod <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 57ca89d - Browse repository at this point
Copy the full SHA 57ca89dView commit details -
aarch64: Add option for user cache maintenance
Add a config option, KernelAArch64UserCacheEnable, that enables user level access to DC CVAU, DC CIVAC, DC CVAC, and IC IVAU which are cache maintenance operations for the data caches and instruction caches underlying Normal memory and also access to the read-only cache-type register CTR_EL0 that provides cache type information. The ArmV8-A architecture allows access from EL0 as fast cache maintenance operations improves DMA performance in user-level device drivers. These instructions are a subset of the available cache maintenance instructions as they can only address lines by virtual address (VA). They also require that the VA provided referrs to a valid mapping with at least read permissions. This corresponds to lines that the EL0 could already affect via regular operation and so it's not expected to break any cache-partitioning scheme. The config option allows this policy to be selected for a particular kernel configuration, but it is default enabled as this has been the existing behavior for current aarch64,hyp configurations and have not been explicitly disabled in non-hyp configurations. Signed-off-by: Kent McLeod <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8402de5 - Browse repository at this point
Copy the full SHA 8402de5View commit details
Commits on Apr 27, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 886fcec - Browse repository at this point
Copy the full SHA 886fcecView commit details -
tools: add manual for bitfield_gen.py
Add a user manual for the bitfield generator that documents syntax, semantics and basic concepts. Should also be able to serve as main spec for what the tool is supposed to do. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 13f0f03 - Browse repository at this point
Copy the full SHA 13f0f03View commit details -
tools: TOC for bitfield generator manual
Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4b18aca - Browse repository at this point
Copy the full SHA 4b18acaView commit details
Commits on Apr 30, 2023
-
gic_v3: use CNT_CT instead of CNTFRQ
- CNTFRQ is a constant value, and does not work for this case, while CNT_CT is the one that should be used as 64-bit physical counter. Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7a0a443 - Browse repository at this point
Copy the full SHA 7a0a443View commit details
Commits on May 1, 2023
-
bitfield_gen: remove unused --multifile_base logic
The `--multifile_base` option is unused in the seL4 build and has comments indicating that it is broken. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ebea422 - Browse repository at this point
Copy the full SHA ebea422View commit details -
bitfield_gen: remove obsolete options, add help
* Add help texts for all CLI options. * Point to the manual in file header. * Remove obsolete `--multifile_base` and `--c_defs` options. The former is unused and the logic for it was removed in the previous commit. The latter is not referenced in the code and has no effect. ` * Remove unused `mode` variable. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 449c908 - Browse repository at this point
Copy the full SHA 449c908View commit details
Commits on May 2, 2023
-
bitfield_gen: add CLI to manual
* describe CLI * describe pruning * mention where in seL4 generated code and source are Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 07a8263 - Browse repository at this point
Copy the full SHA 07a8263View commit details
Commits on May 5, 2023
-
config typo: KernelMaxNumBootinfoUntypedCap
The verified configs have a typo in the name of the KernelMaxNumBootinfoUntypedCaps setting, which is then ignored by the build system and the default is used if not otherwise set. Remove the instances that have been ignored so far and replace with the default value if they are not otherwise set. This means there is no actual config change. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for f11b2a5 - Browse repository at this point
Copy the full SHA f11b2a5View commit details
Commits on May 8, 2023
-
- In non-secure world, group 1 IRQs are used instead of group 0. Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a681fb9 - Browse repository at this point
Copy the full SHA a681fb9View commit details
Commits on May 12, 2023
-
Avoid redundancy. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2826d3b - Browse repository at this point
Copy the full SHA 2826d3bView commit details
Commits on May 22, 2023
-
manual: document VM attributes for RISC-V
Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for afb6300 - Browse repository at this point
Copy the full SHA afb6300View commit details -
manual: x86 VM attributes are for IA-32 and x64
Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6dcbcbd - Browse repository at this point
Copy the full SHA 6dcbcbdView commit details -
manual: ARM_ParityEnabled is ignored on AArch64
Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for ac49331 - Browse repository at this point
Copy the full SHA ac49331View commit details
Commits on May 25, 2023
-
Remove VMKernelReadOnly from AArch64 VM rights
In the interest of stability and not breaking things, the value of VMReadOnly remains the same. Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 8c9cf6c - Browse repository at this point
Copy the full SHA 8c9cf6cView commit details -
generic_timer: force timer to de-assert irq
Generic Timer IRQs are level-sensitive, when the CNT_TVAL is updated the trigger condition is de-asserted and the change is propagated to the GIC in a finite time to clear the pending state. However, we have to make sure the timer deasserts before EOIR/DIR, otherwise the interrupt happens again. Therefore, we need an isb() to cause the timer to de-assert before EOIR/DIR. There is also a chance of spurious IRQ. A spurious IRQ can be generated, in the case we have a level-sensitive IRQ, and its pending state is cleared at device-level but not yet propagated to the GIC. In between the IRQ deactivation and IRQ ack of the new interrupt if the requested change from the timer gets propagated then it causes a spurious IRQ. Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 62c8148 - Browse repository at this point
Copy the full SHA 62c8148View commit details -
generc_timer: enable only once for mcs/non-mcs
Enable the timer only at initialization and since it is always enabled. It is not needed to be re-enabled. Signed-off-by: JorgeMVP <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for b544529 - Browse repository at this point
Copy the full SHA b544529View commit details
Commits on May 31, 2023
-
gic_v3: _Static_assert is not supported
Prefer compile_assert over _Static_assert. The latter is only available in C11, and the verification demands C99. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 94d3934 - Browse repository at this point
Copy the full SHA 94d3934View commit details -
macros: avoid breaking C subset
__builtin_offsetof is not part of the verification C subset -- avoid accidental use by not declaring a macro for it and filter out the single use by explicitly marking it as invisible to verification. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 35c41a8 - Browse repository at this point
Copy the full SHA 35c41a8View commit details
Commits on Jun 1, 2023
-
Add support for other Raspberry Pi 4B variants (seL4#1045)
There are multiple variants of the RPi4B SBC with different sizes of RAM. There exists 1GB, 2GB, 4GB, and 8GB models. This patch adds the `RPI4_MEMORY` CMake configuration option in order to be able to specify the RAM size when building the kernel. Based on the RAM size provided, an appropriate device tree overlay is selected. The default memory size of 8GB remains the same as to not introduce breaking changes. Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 96ce215 - Browse repository at this point
Copy the full SHA 96ce215View commit details -
Fix setting of CMake variable in BCM2711 config
Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 305bfaf - Browse repository at this point
Copy the full SHA 305bfafView commit details
Commits on Jun 5, 2023
-
cmake: allow FPU in AArch32 verification configs
Make FPU possible for "ARM" verification targets. Signed-off-by: Rafal Kolanski <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 240b53e - Browse repository at this point
Copy the full SHA 240b53eView commit details -
configs: turn FPU off for base verification builds
Turn FPU off by default for the verification builds we have so far. Only the imx8mm branch currently supports FPU for AArch32. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for cd8e5c0 - Browse repository at this point
Copy the full SHA cd8e5c0View commit details -
configs: pick imx8mm config from imx8-fpu-ver
Use `ARM_verified.cmake` from branch imx8-fpu-ver as `ARM_imx8mm_verified.cmake` on master, so both can be used by verification CI without switching branches. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for eb279b5 - Browse repository at this point
Copy the full SHA eb279b5View commit details -
configs: pick exynos5 config from exynos5-ver
Use `ARM_HYP_verified.cmake` from branch exynos5-ver as `ARM_HYP_exynos5_verified.cmake` on master, so both can be used by verification CI without switching branches. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 18fef09 - Browse repository at this point
Copy the full SHA 18fef09View commit details -
gic_v3: mark gicv3_do_wait_for_rwp dont-translate
The verification C parser is failing to translate this function, but it does not actually need to since this is behind the machine interface anyway. Mark the function as dont-translate to avoid the problem. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 1b7da36 - Browse repository at this point
Copy the full SHA 1b7da36View commit details
Commits on Jun 6, 2023
-
CCDC-GVSC DISTRIBUTION A. Approved for public release; distribution unlimited. OPSEC#4481. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0e53715 - Browse repository at this point
Copy the full SHA 0e53715View commit details -
64-bit-vms: Add kernel support for 64-bit VMs
This commit combines a number of smaller commits which do the following: * Enter IA-32e mode when running a 64-bit host * Handle additional general purpose registers in 64-bit mode * Handle 64-bit specific MSR events * Properly save and restore FS, GS, and Shadow GS registers CCDC-GVSC DISTRIBUTION A. Approved for public release; distribution unlimited. OPSEC#4481. Signed-off-by: Gerwin Klein <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2dbd1b8 - Browse repository at this point
Copy the full SHA 2dbd1b8View commit details -
64-bit-vms: always save/restore FS+GS registers
Signed-off-by: Chris Guikema <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6ed4986 - Browse repository at this point
Copy the full SHA 6ed4986View commit details -
Add CONFIG_X86_64_VTX_64BIT_GUESTS guards
Guard the new implementation of 64-bit x86 guests behind a config option. This is done so that existing projects that use x86_64 hosts with ia32-bit guests can continue to be supported until either the old feature is preferred to be deprecated, or support can be added to support both simmultaneously. Signed-off-by: Kent McLeod <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7fec9bc - Browse repository at this point
Copy the full SHA 7fec9bcView commit details -
64-bit-vms: removes duplication
Removes duplication of the vmlaunch/vmresume code. Signed-off-by: Jingyao Zhou <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2c5c3b1 - Browse repository at this point
Copy the full SHA 2c5c3b1View commit details
Commits on Jun 8, 2023
-
Co-authored-by: Ivan-Velickovic <[email protected]> Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 5091e53 - Browse repository at this point
Copy the full SHA 5091e53View commit details
Commits on Jun 14, 2023
-
cmake: detect 32-bit x86 cross-compilers
Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 4dc40c3 - Browse repository at this point
Copy the full SHA 4dc40c3View commit details
Commits on Jun 18, 2023
-
Add missing ifdefs around printing functions
These are only called when CONFIG_DEBUG_BUILD is on, which *usually* means that CONIFG_PRINTING is also enabled, but, it's not necessarily the case. Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 625fb14 - Browse repository at this point
Copy the full SHA 625fb14View commit details
Commits on Jun 19, 2023
-
Mark CLINT as reserved device on RISC-V platforms
Without this patch, user-level programs have the ability to map in the core-local interrupt controller on RISC-V platforms which contains the memory-mapped registers for the core-local timer the kernel uses. This is a level of privilege that user-level programs should not have. Writing to the `mtime` register is possible which can then affect the timer interrupts are delivered to the kernel. Signed-off-by: Ivan-Velickovic <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 2730e65 - Browse repository at this point
Copy the full SHA 2730e65View commit details -
Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 147e291 - Browse repository at this point
Copy the full SHA 147e291View commit details
Commits on Jun 20, 2023
-
Commit f4c41f3 removed a check that dereferenced tcbSchedContext. It should have removed this assert() also then. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 7354779 - Browse repository at this point
Copy the full SHA 7354779View commit details -
It does the same on all architectures, so the contents can be moved into the generic code. Signed-off-by: Axel Heider <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 3c18070 - Browse repository at this point
Copy the full SHA 3c18070View commit details
Commits on Jun 21, 2023
-
seL4#1065 introduces a compilation error from refactoring. Also apply some missed feedback from seL4#1065 Signed-off-by: Kent McLeod <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 49f4ddf - Browse repository at this point
Copy the full SHA 49f4ddfView commit details
Commits on Aug 5, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 0b682fa - Browse repository at this point
Copy the full SHA 0b682faView commit details -
Configuration menu - View commit details
-
Copy full SHA for c6f0b96 - Browse repository at this point
Copy the full SHA c6f0b96View commit details -
Configuration menu - View commit details
-
Copy full SHA for 67d9549 - Browse repository at this point
Copy the full SHA 67d9549View commit details -
Configuration menu - View commit details
-
Copy full SHA for 386f7aa - Browse repository at this point
Copy the full SHA 386f7aaView commit details -
Configuration menu - View commit details
-
Copy full SHA for 89ca47c - Browse repository at this point
Copy the full SHA 89ca47cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 79e9af3 - Browse repository at this point
Copy the full SHA 79e9af3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6a7e26c - Browse repository at this point
Copy the full SHA 6a7e26cView commit details