[PATCH 1/4] lib: disable /dev/mem access on aarch64
Leif Lindholm
leif.lindholm at linaro.org
Thu Nov 15 23:25:14 UTC 2018
There is no valid use-case for having the /dev/mem interface enabled,
let alone using it, on a multi-user aarch64 system. So turn fwts_mmap/
fwts_munmap into no-ops here.
Signed-off-by: Leif Lindholm <leif.lindholm at linaro.org>
---
src/lib/include/fwts.h | 3 +++
src/lib/src/fwts_mmap.c | 13 +++++++++++++
2 files changed, 16 insertions(+)
diff --git a/src/lib/include/fwts.h b/src/lib/include/fwts.h
index 3f343ef2..67d0b8f2 100644
--- a/src/lib/include/fwts.h
+++ b/src/lib/include/fwts.h
@@ -98,6 +98,7 @@
#define FWTS_ARCH_INTEL 1
#define FWTS_HAS_ACPI 1
#define FWTS_HAS_UEFI 1
+#define FWTS_USE_DEVMEM 1
#endif
#if defined(__aarch64__)
@@ -108,11 +109,13 @@
#if defined(__s390x__)
#define FWTS_ARCH_S390X 1
+#define FWTS_USE_DEVMEM 1
#endif
#if defined(__PPC64__)
#undef FWTS_HAS_ACPI
#undef FWTS_HAS_UEFI
+#define FWTS_USE_DEVMEM 1
#endif
/* verision 3-tuple into integer */
diff --git a/src/lib/src/fwts_mmap.c b/src/lib/src/fwts_mmap.c
index e28abf87..71c5135d 100644
--- a/src/lib/src/fwts_mmap.c
+++ b/src/lib/src/fwts_mmap.c
@@ -42,6 +42,7 @@ size_t fwts_page_size(void)
return (size_t)(page_size == -1 ? FWTS_DEFAULT_PAGE_SIZE : page_size);
}
+#ifdef FWTS_USE_DEVMEM
/*
* fwts_mmap()
* Try and map physical memory from offset address 'start' and length
@@ -88,3 +89,15 @@ int fwts_munmap(void *mem, const size_t size)
return FWTS_OK;
}
+#else /* FWTS_USE_DEVMEM */
+void *fwts_mmap(const off_t start __attribute__ ((unused)),
+ const size_t size __attribute__ ((unused)))
+{
+ return FWTS_MAP_FAILED;
+}
+
+int fwts_munmap(void *mem __attribute__ ((unused)),
+ const size_t size __attribute__ ((unused))) {
+ return FWTS_ERROR;
+}
+#endif /* FWTS_USE_DEVMEM */
--
2.11.0
More information about the fwts-devel
mailing list