History log of /openbsd/sys/arch/arm64/include/cpufunc.h (Results 1 – 4 of 4)
Revision Date Author Comments
# 31051c90 02-May-2018 patrick <patrick@openbsd.org>

Add imxpd(4) which is a power domain controller driver that
essentially calls into ATF to make it supply power.

ok kettenis@


# a97a42d9 10-Jan-2018 kettenis <kettenis@openbsd.org>

Implement FUCKWIT for arm64; unmap the kernel almost entirely while userland
is running. This provides protection against meltown on cores that are
vilnerable (just Cortex-A75 so far) but also seems

Implement FUCKWIT for arm64; unmap the kernel almost entirely while userland
is running. This provides protection against meltown on cores that are
vilnerable (just Cortex-A75 so far) but also seems to be an essential to
protect against spectre-like attacks against the kernel.

This implementation only exposes a single treampoline page that does not
contain any kernel virtual addresses and also hides the real virtual address
of the exception vectors, which helps on cores vulnerable to "variant 3a"
(Cortex-A57, Cortex-A72). The implementation is inspired by the work done
by Will Deacon for Linux, but there are no knobs to turn it off. The
overhead is fairly limited: around 3-4% slowdown on Cortex-A57.

ok patrick@, deraadt@

show more ...


# b37186f0 24-Mar-2017 kettenis <kettenis@openbsd.org>

Simplify ASID allocation code considerably by allocating an ASID up front
when a pmap is created and freeing it when the pmap is destroyed. This
diff relies on the fill 16-bit ASID space being imple

Simplify ASID allocation code considerably by allocating an ASID up front
when a pmap is created and freeing it when the pmap is destroyed. This
diff relies on the fill 16-bit ASID space being implemented in the processor.
While this is documented as an optional feature in the ARMv8 architecture
reference manual, all ARMv8 processors seen in the wild so far implement
the full 16-bit space. This change incorporates changes by drahn@ to
allocate an empty page table for the lower half of the address space for the
kernel.

ok drahn@, patrick@

show more ...


# 4726b7e0 06-Feb-2017 patrick <patrick@openbsd.org>

Move cache and tlb flush functions, which were mostly inline assembly,
into separate functions. This makes them reusable from other parts in
the kernel. Assembly and header are taken from FreeBSD,

Move cache and tlb flush functions, which were mostly inline assembly,
into separate functions. This makes them reusable from other parts in
the kernel. Assembly and header are taken from FreeBSD, but modified
to fit our requirements and with some unnecessary stuff removed. While
there remove micro optimization for uniprocessor kernels.

show more ...