Re: [PATCH] powerpc/pseries: Export maximum memory value
From: Aravinda Prasad <hidden>
Date: 2018-10-22 10:21:27
On Wednesday 10 October 2018 09:50 PM, Nathan Fontenot wrote:
On 10/10/2018 05:22 AM, Aravinda Prasad wrote:quoted
This patch exports the maximum possible amount of memory configured on the system via /proc/powerpc/lparcfg. Signed-off-by: Aravinda Prasad <redacted> --- arch/powerpc/platforms/pseries/lparcfg.c | 13 +++++++++++++ 1 file changed, 13 insertions(+)diff --git a/arch/powerpc/platforms/pseries/lparcfg.c b/arch/powerpc/platforms/pseries/lparcfg.c index 7c872dc..aa82f55 100644 --- a/arch/powerpc/platforms/pseries/lparcfg.c +++ b/arch/powerpc/platforms/pseries/lparcfg.c@@ -26,6 +26,7 @@ #include <linux/seq_file.h> #include <linux/slab.h> #include <linux/uaccess.h> +#include <linux/hugetlb.h> #include <asm/lppaca.h> #include <asm/hvcall.h> #include <asm/firmware.h>@@ -36,6 +37,7 @@ #include <asm/vio.h> #include <asm/mmu.h> #include <asm/machdep.h> +#include <asm/drmem.h> #include "pseries.h"@@ -433,6 +435,16 @@ static void parse_em_data(struct seq_file *m) seq_printf(m, "power_mode_data=%016lx\n", retbuf[0]); } +static void maxmem_data(struct seq_file *m) +{ + unsigned long maxmem = 0; + + maxmem += drmem_info->n_lmbs * drmem_info->lmb_size; + maxmem += hugetlb_total_pages() * PAGE_SIZE; + + seq_printf(m, "MaxMem=%ld\n", maxmem);Should this be MaxPossibleMem? At least for the drmem memory the value calculated is the maximum possible memory. I wonder if calling it MaxMem would lead users to think they have that much memory available to them.
Nathan, I feel MaxMem makes more sense because, we use "Minimum memory", "Desired memory" and "Maximum memory" in the LPAR profile configuration and MaxMem is in fact displaying the value of this "Maximum memory" profile value. So I want to keep it as "MaxMem". Let me know if you think otherwise. Regards, Aravinda
-Nathanquoted
+} + static int pseries_lparcfg_data(struct seq_file *m, void *v) { int partition_potential_processors;@@ -491,6 +503,7 @@ static int pseries_lparcfg_data(struct seq_file *m, void *v) seq_printf(m, "slb_size=%d\n", mmu_slb_size); #endif parse_em_data(m); + maxmem_data(m); return 0; }
-- Regards, Aravinda