summaryrefslogtreecommitdiffstats
path: root/include/exec
diff options
context:
space:
mode:
authorRichard Henderson2021-02-12 19:48:33 +0100
committerPeter Maydell2021-02-16 12:04:53 +0100
commit26bab757d41b853ea84cb52a10fafc9c10069658 (patch)
tree90ec65d72b68d4f1cbd150369c704d0b9225e19c /include/exec
parenttcg: Introduce target-specific page data for user-only (diff)
downloadqemu-26bab757d41b853ea84cb52a10fafc9c10069658.tar.gz
qemu-26bab757d41b853ea84cb52a10fafc9c10069658.tar.xz
qemu-26bab757d41b853ea84cb52a10fafc9c10069658.zip
linux-user: Introduce PAGE_ANON
Record whether the backing page is anonymous, or if it has file backing. This will allow us to get close to the Linux AArch64 ABI for MTE, which allows tag memory only on ram-backed VMAs. The real ABI allows tag memory on files, when those files are on ram-backed filesystems, such as tmpfs. We will not be able to implement that in QEMU linux-user. Thankfully, anonymous memory for malloc arenas is the primary consumer of this feature, so this restricted version should still be of use. Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Richard Henderson <richard.henderson@linaro.org> Message-id: 20210212184902.1251044-3-richard.henderson@linaro.org Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include/exec')
-rw-r--r--include/exec/cpu-all.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/exec/cpu-all.h b/include/exec/cpu-all.h
index 6421892830..aedf534544 100644
--- a/include/exec/cpu-all.h
+++ b/include/exec/cpu-all.h
@@ -267,6 +267,8 @@ extern intptr_t qemu_host_page_mask;
#define PAGE_WRITE_INV 0x0020
/* For use with page_set_flags: page is being replaced; target_data cleared. */
#define PAGE_RESET 0x0040
+/* For linux-user, indicates that the page is MAP_ANON. */
+#define PAGE_ANON 0x0080
#if defined(CONFIG_BSD) && defined(CONFIG_USER_ONLY)
/* FIXME: Code that sets/uses this is broken and needs to go away. */