From 6b27faba9c7f01ac85d0e67449cf0ffa56dc2c8a Mon Sep 17 00:00:00 2001 From: Borislav Petkov Date: Thu, 13 Sep 2012 18:53:58 +0200 Subject: [PATCH] --- yaml --- r: 336534 b: refs/heads/master c: 16a528ee3975c860dc93fbfc718fe9aa25ed92bc h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/edac/amd64_edac.c | 1 + trunk/drivers/edac/edac_mc_sysfs.c | 3 +++ trunk/include/linux/edac.h | 1 + 4 files changed, 6 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 2af917252918..115ff4c6b5a6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 921a689965c26ae6fde12ebaadb4183cbfdb01fb +refs/heads/master: 16a528ee3975c860dc93fbfc718fe9aa25ed92bc diff --git a/trunk/drivers/edac/amd64_edac.c b/trunk/drivers/edac/amd64_edac.c index 307ff66266a0..f74a684269ff 100644 --- a/trunk/drivers/edac/amd64_edac.c +++ b/trunk/drivers/edac/amd64_edac.c @@ -2174,6 +2174,7 @@ static int init_csrows(struct mem_ctl_info *mci) dimm->edac_mode = edac_mode; dimm->nr_pages = nr_pages; } + csrow->nr_pages = nr_pages; } return empty; diff --git a/trunk/drivers/edac/edac_mc_sysfs.c b/trunk/drivers/edac/edac_mc_sysfs.c index cf13bff94f5c..bd46610979c7 100644 --- a/trunk/drivers/edac/edac_mc_sysfs.c +++ b/trunk/drivers/edac/edac_mc_sysfs.c @@ -180,6 +180,9 @@ static ssize_t csrow_size_show(struct device *dev, int i; u32 nr_pages = 0; + if (csrow->mci->csbased) + return sprintf(data, "%u\n", PAGES_TO_MiB(csrow->nr_pages)); + for (i = 0; i < csrow->nr_channels; i++) nr_pages += csrow->channels[i]->dimm->nr_pages; return sprintf(data, "%u\n", PAGES_TO_MiB(nr_pages)); diff --git a/trunk/include/linux/edac.h b/trunk/include/linux/edac.h index 07bda01bf20a..1b8c02b36f76 100644 --- a/trunk/include/linux/edac.h +++ b/trunk/include/linux/edac.h @@ -533,6 +533,7 @@ struct csrow_info { u32 ue_count; /* Uncorrectable Errors for this csrow */ u32 ce_count; /* Correctable Errors for this csrow */ + u32 nr_pages; /* combined pages count of all channels */ struct mem_ctl_info *mci; /* the parent */