diff options
author | Alexander Gordeev <agordeev@linux.ibm.com> | 2022-09-04 11:32:32 +0300 |
---|---|---|
committer | Vasily Gorbik <gor@linux.ibm.com> | 2022-09-14 17:46:01 +0300 |
commit | c0ceb94403880840effeb1990a19357a1232578f (patch) | |
tree | a759fa678f3c23750547e215f3616b53838186f4 /arch | |
parent | 2f0e8aae26a27fe73d033788f8e92188e7584f41 (diff) | |
download | linux-c0ceb94403880840effeb1990a19357a1232578f.tar.xz |
s390/mm,ptdump: add real memory copy page markers
Add "Real Memory Copy Area Start" and "Real Memory Copy Area End"
markers that fence the page used for real memory copying.
Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Signed-off-by: Vasily Gorbik <gor@linux.ibm.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/s390/mm/dump_pagetables.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/s390/mm/dump_pagetables.c b/arch/s390/mm/dump_pagetables.c index 4e2aa56cf9fd..9953819d7959 100644 --- a/arch/s390/mm/dump_pagetables.c +++ b/arch/s390/mm/dump_pagetables.c @@ -11,6 +11,7 @@ #include <asm/abs_lowcore.h> #include <asm/nospec-branch.h> #include <asm/sections.h> +#include <asm/maccess.h> static unsigned long max_addr; @@ -44,6 +45,8 @@ enum address_markers_idx { MODULES_END_NR, ABS_LOWCORE_NR, ABS_LOWCORE_END_NR, + MEMCPY_REAL_NR, + MEMCPY_REAL_END_NR, }; static struct addr_marker address_markers[] = { @@ -71,6 +74,8 @@ static struct addr_marker address_markers[] = { [MODULES_END_NR] = {0, "Modules Area End"}, [ABS_LOWCORE_NR] = {0, "Lowcore Area Start"}, [ABS_LOWCORE_END_NR] = {0, "Lowcore Area End"}, + [MEMCPY_REAL_NR] = {0, "Real Memory Copy Area Start"}, + [MEMCPY_REAL_END_NR] = {0, "Real Memory Copy Area End"}, { -1, NULL } }; @@ -291,6 +296,8 @@ static int pt_dump_init(void) address_markers[MODULES_END_NR].start_address = MODULES_END; address_markers[ABS_LOWCORE_NR].start_address = __abs_lowcore; address_markers[ABS_LOWCORE_END_NR].start_address = __abs_lowcore + ABS_LOWCORE_MAP_SIZE; + address_markers[MEMCPY_REAL_NR].start_address = __memcpy_real_area; + address_markers[MEMCPY_REAL_END_NR].start_address = __memcpy_real_area + PAGE_SIZE; address_markers[VMEMMAP_NR].start_address = (unsigned long) vmemmap; address_markers[VMEMMAP_END_NR].start_address = (unsigned long)vmemmap + vmemmap_size; address_markers[VMALLOC_NR].start_address = VMALLOC_START; |