diff options
author | Marco Nelissen <marcone@google.com> | 2022-12-15 10:21:33 -0800 |
---|---|---|
committer | Marco Nelissen <marcone@google.com> | 2022-12-17 02:49:02 +0000 |
commit | 94d3bac91604d9ff39114c98e7a5483ce501778a (patch) | |
tree | 5e17706c1b496c8bfc663ce85195aeb4b3f8553a /include | |
parent | a467f839883f087ca5d2436a9e13f5edd2f51582 (diff) | |
download | common-94d3bac91604d9ff39114c98e7a5483ce501778a.tar.gz |
arch: arm64: support tagged memory allocations
Bug: 231155845
Test: boot, scudotest
Change-Id: Ic5e70a88405cb5f4e952b283c7c4c1ae7b0dbaf2
Diffstat (limited to 'include')
-rw-r--r-- | include/arch/ops.h | 6 | ||||
-rw-r--r-- | include/kernel/vm.h | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/include/arch/ops.h b/include/arch/ops.h index f0977519..7c13c218 100644 --- a/include/arch/ops.h +++ b/include/arch/ops.h @@ -66,6 +66,12 @@ void arch_sync_cache_range(addr_t start, size_t len); void arch_idle(void); +/* Zero the specified memory as well as the corresponding tags */ +void arch_clear_pages_and_tags(vaddr_t addr, size_t size); + +/* Return true if tagging is enabled */ +bool arch_tagging_enabled(void); + __END_CDECLS #endif // !ASSEMBLY diff --git a/include/kernel/vm.h b/include/kernel/vm.h index 8cb3ed16..316042bd 100644 --- a/include/kernel/vm.h +++ b/include/kernel/vm.h @@ -176,6 +176,8 @@ static status_t pmm_add_arena_late(pmm_arena_t *arena) { #define PMM_ALLOC_FLAG_KMAP (1U << 0) #define PMM_ALLOC_FLAG_CONTIGUOUS (1U << 1) #define PMM_ALLOC_FLAG_FROM_RESERVED (1U << 2) +#define PMM_ALLOC_FLAG_NO_CLEAR (1U << 3) +#define PMM_ALLOC_FLAG_ALLOW_TAGGED (1U << 4) struct res_group; |