summaryrefslogtreecommitdiffstats
path: root/arch/s390/include
diff options
context:
space:
mode:
authorAlexander Gordeev <agordeev@linux.ibm.com>2024-03-01 07:03:49 +0100
committerAlexander Gordeev <agordeev@linux.ibm.com>2024-04-17 13:37:59 +0200
commitb2b15f079c4c19e3a73a8b0cf4f901186f12098f (patch)
treed00cb0bad807dd98414097e445ffddb654ef7acf /arch/s390/include
parent47bf81767277b5abb87f7e86e15310f0e9d4d06c (diff)
downloadlinux-b2b15f079c4c19e3a73a8b0cf4f901186f12098f.tar.gz
linux-b2b15f079c4c19e3a73a8b0cf4f901186f12098f.tar.bz2
linux-b2b15f079c4c19e3a73a8b0cf4f901186f12098f.zip
s390/boot: Consider DCSS segments on memory layout setup
The maximum mappable physical address (as returned by arch_get_mappable_range() callback) is limited by the value of (1UL << MAX_PHYSMEM_BITS). The maximum physical address available to a DCSS segment is 512GB. In case the available online or offline memory size is less than the DCSS limit arch_get_mappable_range() would include never used [512GB..(1UL << MAX_PHYSMEM_BITS)] range. Acked-by: Heiko Carstens <hca@linux.ibm.com> Signed-off-by: Alexander Gordeev <agordeev@linux.ibm.com>
Diffstat (limited to 'arch/s390/include')
-rw-r--r--arch/s390/include/asm/extmem.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/arch/s390/include/asm/extmem.h b/arch/s390/include/asm/extmem.h
index 568fd81bb77b..e0a06060afdd 100644
--- a/arch/s390/include/asm/extmem.h
+++ b/arch/s390/include/asm/extmem.h
@@ -8,6 +8,13 @@
#define _ASM_S390X_DCSS_H
#ifndef __ASSEMBLY__
+/*
+ * DCSS segment is defined as a contiguous range of pages using DEFSEG command.
+ * The range start and end is a page number with a value less than or equal to
+ * 0x7ffffff (see CP Commands and Utilities Reference).
+ */
+#define MAX_DCSS_ADDR (512UL * SZ_1G)
+
/* possible values for segment type as returned by segment_info */
#define SEG_TYPE_SW 0
#define SEG_TYPE_EW 1