summaryrefslogtreecommitdiffstats
path: root/arch/s390/appldata
diff options
context:
space:
mode:
authorGerald Schaefer <gerald.schaefer@de.ibm.com>2014-02-28 17:35:52 +0100
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2014-03-07 15:25:55 +0100
commit6967037baf08860407d275fdd6475d2ee41bd9b7 (patch)
treeab24cabaa559374fc43afcdbb1ddf97166aff655 /arch/s390/appldata
parentd72d2bb5a6bc85af77a9f969687c74ea00cdcc99 (diff)
downloadlinux-0-day-6967037baf08860407d275fdd6475d2ee41bd9b7.tar.gz
linux-0-day-6967037baf08860407d275fdd6475d2ee41bd9b7.tar.xz
s390/appldata_os: fix cpu array size calculation
The cpu array size calculation uses the NR_CPUS config option, which was recently increased from 64 to 256. With a value of 256, the cpu array will no longer fit into one APPLDATA record and loading the appldata_os module fails with the following error: could not insert 'appldata_os': Cannot allocate memory Use num_possible_cpus() instead of NR_CPUS. For z/VM, this will still result in a value of 64. This is not true for LPAR, but the appldata feature is not available for LPAR. Signed-off-by: Gerald Schaefer <gerald.schaefer@de.ibm.com> Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/appldata')
-rw-r--r--arch/s390/appldata/appldata_os.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/s390/appldata/appldata_os.c b/arch/s390/appldata/appldata_os.c
index de8e2b3b0180e..69b23b25ac34a 100644
--- a/arch/s390/appldata/appldata_os.c
+++ b/arch/s390/appldata/appldata_os.c
@@ -171,7 +171,7 @@ static int __init appldata_os_init(void)
int rc, max_size;
max_size = sizeof(struct appldata_os_data) +
- (NR_CPUS * sizeof(struct appldata_os_per_cpu));
+ (num_possible_cpus() * sizeof(struct appldata_os_per_cpu));
if (max_size > APPLDATA_MAX_REC_SIZE) {
pr_err("Maximum OS record size %i exceeds the maximum "
"record size %i\n", max_size, APPLDATA_MAX_REC_SIZE);