i82975x_edac: Test nr_pages earlier to save a few CPU cycles
authorMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 28 Mar 2012 23:13:36 +0000 (20:13 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Mon, 28 May 2012 22:13:53 +0000 (19:13 -0300)
Avoid test nr_pages twice, and initializing some data that won't
be used.

Cleanup patch only.

Reported-by: Aristeu Rozanski Filho <arozansk@redhat.com>
Reviewed-by: Aristeu Rozanski <arozansk@redhat.com>
Cc: Ranganathan Desikan <ravi@jetztechnologies.com>
Cc: "Arvind R." <arvino55@gmail.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/edac/i82975x_edac.c

index 9c346d7f707f951a08e126568916344274f5bc08..433332c7cdbabe3bf54fbce0e9622403af29869c 100644 (file)
@@ -410,6 +410,9 @@ static void i82975x_init_csrows(struct mem_ctl_info *mci,
                        cumul_size);
 
                nr_pages = cumul_size - last_cumul_size;
+               if (!nr_pages)
+                       continue;
+
                /*
                 * Initialise dram labels
                 * index values:
@@ -420,9 +423,6 @@ static void i82975x_init_csrows(struct mem_ctl_info *mci,
                for (chan = 0; chan < csrow->nr_channels; chan++) {
                        dimm = mci->csrows[index].channels[chan].dimm;
 
-                       if (!nr_pages)
-                               continue;
-
                        dimm->nr_pages = nr_pages / csrow->nr_channels;
                        strncpy(csrow->channels[chan].dimm->label,
                                        labels[(index >> 1) + (chan * 2)],
@@ -433,9 +433,6 @@ static void i82975x_init_csrows(struct mem_ctl_info *mci,
                        dimm->edac_mode = EDAC_SECDED; /* only supported */
                }
 
-               if (!nr_pages)
-                       continue;       /* not populated */
-
                csrow->first_page = last_cumul_size;
                csrow->last_page = cumul_size - 1;
                last_cumul_size = cumul_size;