i7core_edac: Fix a bug when printing error counts with RDIMMs
authorMauro Carvalho Chehab <mchehab@redhat.com>
Sat, 5 Sep 2009 08:10:31 +0000 (05:10 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 10 May 2010 14:44:59 +0000 (11:44 -0300)
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/edac/i7core_edac.c

index 2c30493..821e8a1 100644 (file)
@@ -1054,13 +1054,15 @@ static ssize_t i7core_ce_regs_show(struct mem_ctl_info *mci, char *data)
                count = sprintf(data, "data unavailable\n");
                return 0;
        }
-       if (!pvt->is_registered)
+       if (!pvt->is_registered) {
                count = sprintf(data, "all channels "
                                "UDIMM0: %lu UDIMM1: %lu UDIMM2: %lu\n",
                                pvt->udimm_ce_count[0],
                                pvt->udimm_ce_count[1],
                                pvt->udimm_ce_count[2]);
-       else
+               data  += count;
+               total += count;
+       } else {
                for (i = 0; i < NUM_CHANS; i++) {
                        count = sprintf(data, "channel %d RDIMM0: %lu "
                                        "RDIMM1: %lu RDIMM2: %lu\n",
@@ -1068,9 +1070,10 @@ static ssize_t i7core_ce_regs_show(struct mem_ctl_info *mci, char *data)
                                        pvt->rdimm_ce_count[i][0],
                                        pvt->rdimm_ce_count[i][1],
                                        pvt->rdimm_ce_count[i][2]);
-                               }
-       data  += count;
-       total += count;
+                       data  += count;
+                       total += count;
+               }
+       }
 
        return total;
 }