Commit 537fba28928c01b7db1580627450691a4bb0b9b3

Authored by Dave Peterson
Committed by Linus Torvalds
1 parent f2fe42abbf

[PATCH] EDAC: printk cleanup

This implements the following idea:

On Monday 30 January 2006 19:22, Eric W. Biederman wrote:
> One piece missing from this conversation is the issue that we need errors
> in a uniform format.  That is why edac_mc has helper functions.
>
> However there will always be errors that don't fit any particular model.
> Could we add a edac_printk(dev, );  That is similar to dev_printk but
> prints out an EDAC header and the device on which the error was found?
> Letting the rest of the string be user specified.
>
> For actual control that interface may be to blunt, but at least for people
> looking in the logs it allows all of the errors to be detected and
> harvested.

Signed-off-by: David S. Peterson <dsp@llnl.gov>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

Showing 8 changed files with 275 additions and 240 deletions Side-by-side Diff

drivers/edac/amd76x_edac.c
... ... @@ -25,6 +25,14 @@
25 25 #include "edac_mc.h"
26 26  
27 27  
  28 +#define amd76x_printk(level, fmt, arg...) \
  29 + edac_printk(level, "amd76x", fmt, ##arg)
  30 +
  31 +
  32 +#define amd76x_mc_printk(mci, level, fmt, arg...) \
  33 + edac_mc_chipset_printk(mci, level, "amd76x", fmt, ##arg)
  34 +
  35 +
28 36 #define AMD76X_NR_CSROWS 8
29 37 #define AMD76X_NR_CHANS 1
30 38 #define AMD76X_NR_DIMMS 4
... ... @@ -174,7 +182,7 @@
174 182 static void amd76x_check(struct mem_ctl_info *mci)
175 183 {
176 184 struct amd76x_error_info info;
177   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  185 + debugf3("%s()\n", __func__);
178 186 amd76x_get_error_info(mci, &info);
179 187 amd76x_process_error_info(mci, &info, 1);
180 188 }
... ... @@ -204,7 +212,7 @@
204 212 u32 ems;
205 213 u32 ems_mode;
206 214  
207   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  215 + debugf0("%s()\n", __func__);
208 216  
209 217 pci_read_config_dword(pdev, AMD76X_ECC_MODE_STATUS, &ems);
210 218 ems_mode = (ems >> 10) & 0x3;
... ... @@ -216,7 +224,7 @@
216 224 goto fail;
217 225 }
218 226  
219   - debugf0("MC: " __FILE__ ": %s(): mci = %p\n", __func__, mci);
  227 + debugf0("%s(): mci = %p\n", __func__, mci);
220 228  
221 229 mci->pdev = pci_dev_get(pdev);
222 230 mci->mtype_cap = MEM_FLAG_RDDR;
223 231  
... ... @@ -267,13 +275,12 @@
267 275 (u32) (0x3 << 8));
268 276  
269 277 if (edac_mc_add_mc(mci)) {
270   - debugf3("MC: " __FILE__
271   - ": %s(): failed edac_mc_add_mc()\n", __func__);
  278 + debugf3("%s(): failed edac_mc_add_mc()\n", __func__);
272 279 goto fail;
273 280 }
274 281  
275 282 /* get this far and it's successful */
276   - debugf3("MC: " __FILE__ ": %s(): success\n", __func__);
  283 + debugf3("%s(): success\n", __func__);
277 284 return 0;
278 285  
279 286 fail:
... ... @@ -289,7 +296,7 @@
289 296 static int __devinit amd76x_init_one(struct pci_dev *pdev,
290 297 const struct pci_device_id *ent)
291 298 {
292   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  299 + debugf0("%s()\n", __func__);
293 300  
294 301 /* don't need to call pci_device_enable() */
295 302 return amd76x_probe1(pdev, ent->driver_data);
... ... @@ -309,7 +316,7 @@
309 316 {
310 317 struct mem_ctl_info *mci;
311 318  
312   - debugf0(__FILE__ ": %s()\n", __func__);
  319 + debugf0("%s()\n", __func__);
313 320  
314 321 if ((mci = edac_mc_find_mci_by_pdev(pdev)) == NULL)
315 322 return;
drivers/edac/e752x_edac.c
... ... @@ -30,6 +30,14 @@
30 30 #include "edac_mc.h"
31 31  
32 32  
  33 +#define e752x_printk(level, fmt, arg...) \
  34 + edac_printk(level, "e752x", fmt, ##arg)
  35 +
  36 +
  37 +#define e752x_mc_printk(mci, level, fmt, arg...) \
  38 + edac_mc_chipset_printk(mci, level, "e752x", fmt, ##arg)
  39 +
  40 +
33 41 #ifndef PCI_DEVICE_ID_INTEL_7520_0
34 42 #define PCI_DEVICE_ID_INTEL_7520_0 0x3590
35 43 #endif /* PCI_DEVICE_ID_INTEL_7520_0 */
... ... @@ -215,7 +223,7 @@
215 223 u32 remap;
216 224 struct e752x_pvt *pvt = (struct e752x_pvt *) mci->pvt_info;
217 225  
218   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  226 + debugf3("%s()\n", __func__);
219 227  
220 228 if (page < pvt->tolm)
221 229 return page;
... ... @@ -224,7 +232,7 @@
224 232 remap = (page - pvt->tolm) + pvt->remapbase;
225 233 if (remap < pvt->remaplimit)
226 234 return remap;
227   - printk(KERN_ERR "Invalid page %lx - out of range\n", page);
  235 + e752x_printk(KERN_ERR, "Invalid page %lx - out of range\n", page);
228 236 return pvt->tolm - 1;
229 237 }
230 238  
... ... @@ -237,7 +245,7 @@
237 245 int i;
238 246 struct e752x_pvt *pvt = (struct e752x_pvt *) mci->pvt_info;
239 247  
240   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  248 + debugf3("%s()\n", __func__);
241 249  
242 250 /* convert the addr to 4k page */
243 251 page = sec1_add >> (PAGE_SHIFT - 4);
244 252  
245 253  
... ... @@ -246,24 +254,23 @@
246 254 if (pvt->mc_symmetric) {
247 255 /* chip select are bits 14 & 13 */
248 256 row = ((page >> 1) & 3);
249   - printk(KERN_WARNING
250   - "Test row %d Table %d %d %d %d %d %d %d %d\n",
251   - row, pvt->map[0], pvt->map[1], pvt->map[2],
252   - pvt->map[3], pvt->map[4], pvt->map[5],
253   - pvt->map[6], pvt->map[7]);
  257 + e752x_printk(KERN_WARNING,
  258 + "Test row %d Table %d %d %d %d %d %d %d %d\n",
  259 + row, pvt->map[0], pvt->map[1], pvt->map[2],
  260 + pvt->map[3], pvt->map[4], pvt->map[5],
  261 + pvt->map[6], pvt->map[7]);
254 262  
255 263 /* test for channel remapping */
256 264 for (i = 0; i < 8; i++) {
257 265 if (pvt->map[i] == row)
258 266 break;
259 267 }
260   - printk(KERN_WARNING "Test computed row %d\n", i);
  268 + e752x_printk(KERN_WARNING, "Test computed row %d\n", i);
261 269 if (i < 8)
262 270 row = i;
263 271 else
264   - printk(KERN_WARNING
265   - "MC%d: row %d not found in remap table\n",
266   - mci->mc_idx, row);
  272 + e752x_mc_printk(mci, KERN_WARNING,
  273 + "row %d not found in remap table\n", row);
267 274 } else
268 275 row = edac_mc_find_csrow_by_page(mci, page);
269 276 /* 0 = channel A, 1 = channel B */
... ... @@ -293,7 +300,7 @@
293 300 int row;
294 301 struct e752x_pvt *pvt = (struct e752x_pvt *) mci->pvt_info;
295 302  
296   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  303 + debugf3("%s()\n", __func__);
297 304  
298 305 if (error_one & 0x0202) {
299 306 error_2b = ded_add;
... ... @@ -336,7 +343,7 @@
336 343 if (!handle_error)
337 344 return;
338 345  
339   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  346 + debugf3("%s()\n", __func__);
340 347 edac_mc_handle_ue_no_info(mci, "e752x UE log memory write");
341 348 }
342 349  
... ... @@ -352,9 +359,9 @@
352 359 row = pvt->mc_symmetric ?
353 360 ((page >> 1) & 3) : /* chip select are bits 14 & 13 */
354 361 edac_mc_find_csrow_by_page(mci, page);
355   - printk(KERN_WARNING
356   - "MC%d: CE page 0x%lx, row %d : Memory read retry\n",
357   - mci->mc_idx, (long unsigned int) page, row);
  362 + e752x_mc_printk(mci, KERN_WARNING,
  363 + "CE page 0x%lx, row %d : Memory read retry\n",
  364 + (long unsigned int) page, row);
358 365 }
359 366  
360 367 static inline void process_ded_retry(struct mem_ctl_info *mci, u16 error,
... ... @@ -372,8 +379,7 @@
372 379 *error_found = 1;
373 380  
374 381 if (handle_error)
375   - printk(KERN_WARNING "MC%d: Memory threshold CE\n",
376   - mci->mc_idx);
  382 + e752x_mc_printk(mci, KERN_WARNING, "Memory threshold CE\n");
377 383 }
378 384  
379 385 static char *global_message[11] = {
... ... @@ -391,7 +397,7 @@
391 397  
392 398 for (i = 0; i < 11; i++) {
393 399 if (errors & (1 << i))
394   - printk(KERN_WARNING "%sError %s\n",
  400 + e752x_printk(KERN_WARNING, "%sError %s\n",
395 401 fatal_message[fatal], global_message[i]);
396 402 }
397 403 }
... ... @@ -418,7 +424,7 @@
418 424  
419 425 for (i = 0; i < 7; i++) {
420 426 if (errors & (1 << i))
421   - printk(KERN_WARNING "%sError %s\n",
  427 + e752x_printk(KERN_WARNING, "%sError %s\n",
422 428 fatal_message[fatal], hub_message[i]);
423 429 }
424 430 }
... ... @@ -445,7 +451,7 @@
445 451  
446 452 for (i = 0; i < 4; i++) {
447 453 if (errors & (1 << i))
448   - printk(KERN_WARNING "Non-Fatal Error %s\n",
  454 + e752x_printk(KERN_WARNING, "Non-Fatal Error %s\n",
449 455 membuf_message[i]);
450 456 }
451 457 }
... ... @@ -478,7 +484,7 @@
478 484  
479 485 for (i = 0; i < 10; i++) {
480 486 if (errors & (1 << i))
481   - printk(KERN_WARNING "%sError System Bus %s\n",
  487 + e752x_printk(KERN_WARNING, "%sError System Bus %s\n",
482 488 fatal_message[fatal], global_message[i]);
483 489 }
484 490 }
... ... @@ -727,7 +733,7 @@
727 733 static void e752x_check(struct mem_ctl_info *mci)
728 734 {
729 735 struct e752x_error_info info;
730   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  736 + debugf3("%s()\n", __func__);
731 737 e752x_get_error_info(mci, &info);
732 738 e752x_process_error_info(mci, &info, 1);
733 739 }
... ... @@ -752,7 +758,7 @@
752 758 struct pci_dev *pres_dev;
753 759 struct pci_dev *dev = NULL;
754 760  
755   - debugf0("MC: " __FILE__ ": %s(): mci\n", __func__);
  761 + debugf0("%s(): mci\n", __func__);
756 762 debugf0("Starting Probe1\n");
757 763  
758 764 /* enable device 0 function 1 */
... ... @@ -776,7 +782,7 @@
776 782 goto fail;
777 783 }
778 784  
779   - debugf3("MC: " __FILE__ ": %s(): init mci\n", __func__);
  785 + debugf3("%s(): init mci\n", __func__);
780 786  
781 787 mci->mtype_cap = MEM_FLAG_RDDR;
782 788 mci->edac_ctl_cap = EDAC_FLAG_NONE | EDAC_FLAG_SECDED |
... ... @@ -786,7 +792,7 @@
786 792 mci->mod_ver = "$Revision: 1.5.2.11 $";
787 793 mci->pdev = pdev;
788 794  
789   - debugf3("MC: " __FILE__ ": %s(): init pvt\n", __func__);
  795 + debugf3("%s(): init pvt\n", __func__);
790 796 pvt = (struct e752x_pvt *) mci->pvt_info;
791 797 pvt->dev_info = &e752x_devs[dev_idx];
792 798 pvt->bridge_ck = pci_get_device(PCI_VENDOR_ID_INTEL,
793 799  
... ... @@ -796,14 +802,14 @@
796 802 pvt->bridge_ck = pci_scan_single_device(pdev->bus,
797 803 PCI_DEVFN(0, 1));
798 804 if (pvt->bridge_ck == NULL) {
799   - printk(KERN_ERR "MC: error reporting device not found:"
  805 + e752x_printk(KERN_ERR, "error reporting device not found:"
800 806 "vendor %x device 0x%x (broken BIOS?)\n",
801 807 PCI_VENDOR_ID_INTEL, e752x_devs[dev_idx].err_dev);
802 808 goto fail;
803 809 }
804 810 pvt->mc_symmetric = ((ddrcsr & 0x10) != 0);
805 811  
806   - debugf3("MC: " __FILE__ ": %s(): more mci init\n", __func__);
  812 + debugf3("%s(): more mci init\n", __func__);
807 813 mci->ctl_name = pvt->dev_info->ctl_name;
808 814 mci->edac_check = e752x_check;
809 815 mci->ctl_page_to_phys = ctl_page_to_phys;
... ... @@ -828,8 +834,8 @@
828 834 pci_read_config_byte(mci->pdev, E752X_DRB + index, &value);
829 835 /* convert a 128 or 64 MiB DRB to a page size. */
830 836 cumul_size = value << (25 + drc_drbg - PAGE_SHIFT);
831   - debugf3("MC: " __FILE__ ": %s(): (%d) cumul_size 0x%x\n",
832   - __func__, index, cumul_size);
  837 + debugf3("%s(): (%d) cumul_size 0x%x\n", __func__, index,
  838 + cumul_size);
833 839 if (cumul_size == last_cumul_size)
834 840 continue; /* not populated */
835 841  
... ... @@ -897,8 +903,7 @@
897 903  
898 904 mci->edac_cap |= EDAC_FLAG_NONE;
899 905  
900   - debugf3("MC: " __FILE__ ": %s(): tolm, remapbase, remaplimit\n",
901   - __func__);
  906 + debugf3("%s(): tolm, remapbase, remaplimit\n", __func__);
902 907 /* load the top of low memory, remap base, and remap limit vars */
903 908 pci_read_config_word(mci->pdev, E752X_TOLM, &pci_data);
904 909 pvt->tolm = ((u32) pci_data) << 4;
905 910  
... ... @@ -906,13 +911,12 @@
906 911 pvt->remapbase = ((u32) pci_data) << 14;
907 912 pci_read_config_word(mci->pdev, E752X_REMAPLIMIT, &pci_data);
908 913 pvt->remaplimit = ((u32) pci_data) << 14;
909   - printk("tolm = %x, remapbase = %x, remaplimit = %x\n", pvt->tolm,
910   - pvt->remapbase, pvt->remaplimit);
  914 + e752x_printk(KERN_INFO,
  915 + "tolm = %x, remapbase = %x, remaplimit = %x\n",
  916 + pvt->tolm, pvt->remapbase, pvt->remaplimit);
911 917  
912 918 if (edac_mc_add_mc(mci)) {
913   - debugf3("MC: " __FILE__
914   - ": %s(): failed edac_mc_add_mc()\n",
915   - __func__);
  919 + debugf3("%s(): failed edac_mc_add_mc()\n", __func__);
916 920 goto fail;
917 921 }
918 922  
... ... @@ -975,7 +979,7 @@
975 979 pci_write_config_word(dev, E752X_DRAM_NERR, stat16);
976 980  
977 981 /* get this far and it's successful */
978   - debugf3("MC: " __FILE__ ": %s(): success\n", __func__);
  982 + debugf3("%s(): success\n", __func__);
979 983 return 0;
980 984  
981 985 fail:
... ... @@ -995,7 +999,7 @@
995 999 static int __devinit e752x_init_one(struct pci_dev *pdev,
996 1000 const struct pci_device_id *ent)
997 1001 {
998   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  1002 + debugf0("%s()\n", __func__);
999 1003  
1000 1004 /* wake up and enable device */
1001 1005 if(pci_enable_device(pdev) < 0)
... ... @@ -1009,7 +1013,7 @@
1009 1013 struct mem_ctl_info *mci;
1010 1014 struct e752x_pvt *pvt;
1011 1015  
1012   - debugf0(__FILE__ ": %s()\n", __func__);
  1016 + debugf0("%s()\n", __func__);
1013 1017  
1014 1018 if ((mci = edac_mc_find_mci_by_pdev(pdev)) == NULL)
1015 1019 return;
... ... @@ -1050,7 +1054,7 @@
1050 1054 {
1051 1055 int pci_rc;
1052 1056  
1053   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  1057 + debugf3("%s()\n", __func__);
1054 1058 pci_rc = pci_register_driver(&e752x_driver);
1055 1059 return (pci_rc < 0) ? pci_rc : 0;
1056 1060 }
... ... @@ -1058,7 +1062,7 @@
1058 1062  
1059 1063 static void __exit e752x_exit(void)
1060 1064 {
1061   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  1065 + debugf3("%s()\n", __func__);
1062 1066 pci_unregister_driver(&e752x_driver);
1063 1067 }
1064 1068  
drivers/edac/e7xxx_edac.c
... ... @@ -32,6 +32,14 @@
32 32 #include "edac_mc.h"
33 33  
34 34  
  35 +#define e7xxx_printk(level, fmt, arg...) \
  36 + edac_printk(level, "e7xxx", fmt, ##arg)
  37 +
  38 +
  39 +#define e7xxx_mc_printk(mci, level, fmt, arg...) \
  40 + edac_mc_chipset_printk(mci, level, "e7xxx", fmt, ##arg)
  41 +
  42 +
35 43 #ifndef PCI_DEVICE_ID_INTEL_7205_0
36 44 #define PCI_DEVICE_ID_INTEL_7205_0 0x255d
37 45 #endif /* PCI_DEVICE_ID_INTEL_7205_0 */
... ... @@ -161,7 +169,7 @@
161 169 /* FIXME - is this valid for both SECDED and S4ECD4ED? */
162 170 static inline int e7xxx_find_channel(u16 syndrome)
163 171 {
164   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  172 + debugf3("%s()\n", __func__);
165 173  
166 174 if ((syndrome & 0xff00) == 0)
167 175 return 0;
... ... @@ -179,7 +187,7 @@
179 187 u32 remap;
180 188 struct e7xxx_pvt *pvt = (struct e7xxx_pvt *) mci->pvt_info;
181 189  
182   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  190 + debugf3("%s()\n", __func__);
183 191  
184 192 if ((page < pvt->tolm) ||
185 193 ((page >= 0x100000) && (page < pvt->remapbase)))
... ... @@ -187,7 +195,7 @@
187 195 remap = (page - pvt->tolm) + pvt->remapbase;
188 196 if (remap < pvt->remaplimit)
189 197 return remap;
190   - printk(KERN_ERR "Invalid page %lx - out of range\n", page);
  198 + e7xxx_printk(KERN_ERR, "Invalid page %lx - out of range\n", page);
191 199 return pvt->tolm - 1;
192 200 }
193 201  
... ... @@ -199,7 +207,7 @@
199 207 int row;
200 208 int channel;
201 209  
202   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  210 + debugf3("%s()\n", __func__);
203 211  
204 212 /* read the error address */
205 213 error_1b = info->dram_celog_add;
... ... @@ -218,7 +226,7 @@
218 226  
219 227 static void process_ce_no_info(struct mem_ctl_info *mci)
220 228 {
221   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  229 + debugf3("%s()\n", __func__);
222 230 edac_mc_handle_ce_no_info(mci, "e7xxx CE log register overflow");
223 231 }
224 232  
... ... @@ -228,7 +236,7 @@
228 236 u32 error_2b, block_page;
229 237 int row;
230 238  
231   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  239 + debugf3("%s()\n", __func__);
232 240  
233 241 /* read the error address */
234 242 error_2b = info->dram_uelog_add;
... ... @@ -241,7 +249,7 @@
241 249  
242 250 static void process_ue_no_info(struct mem_ctl_info *mci)
243 251 {
244   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  252 + debugf3("%s()\n", __func__);
245 253 edac_mc_handle_ue_no_info(mci, "e7xxx UE log register overflow");
246 254 }
247 255  
... ... @@ -330,7 +338,7 @@
330 338 {
331 339 struct e7xxx_error_info info;
332 340  
333   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  341 + debugf3("%s()\n", __func__);
334 342 e7xxx_get_error_info(mci, &info);
335 343 e7xxx_process_error_info(mci, &info, 1);
336 344 }
... ... @@ -351,7 +359,7 @@
351 359 unsigned long last_cumul_size;
352 360  
353 361  
354   - debugf0("MC: " __FILE__ ": %s(): mci\n", __func__);
  362 + debugf0("%s(): mci\n", __func__);
355 363  
356 364 /* need to find out the number of channels */
357 365 pci_read_config_dword(pdev, E7XXX_DRC, &drc);
... ... @@ -369,7 +377,7 @@
369 377 goto fail;
370 378 }
371 379  
372   - debugf3("MC: " __FILE__ ": %s(): init mci\n", __func__);
  380 + debugf3("%s(): init mci\n", __func__);
373 381  
374 382 mci->mtype_cap = MEM_FLAG_RDDR;
375 383 mci->edac_ctl_cap =
376 384  
377 385  
... ... @@ -379,21 +387,21 @@
379 387 mci->mod_ver = "$Revision: 1.5.2.9 $";
380 388 mci->pdev = pdev;
381 389  
382   - debugf3("MC: " __FILE__ ": %s(): init pvt\n", __func__);
  390 + debugf3("%s(): init pvt\n", __func__);
383 391 pvt = (struct e7xxx_pvt *) mci->pvt_info;
384 392 pvt->dev_info = &e7xxx_devs[dev_idx];
385 393 pvt->bridge_ck = pci_get_device(PCI_VENDOR_ID_INTEL,
386 394 pvt->dev_info->err_dev,
387 395 pvt->bridge_ck);
388 396 if (!pvt->bridge_ck) {
389   - printk(KERN_ERR
390   - "MC: error reporting device not found:"
391   - "vendor %x device 0x%x (broken BIOS?)\n",
392   - PCI_VENDOR_ID_INTEL, e7xxx_devs[dev_idx].err_dev);
  397 + e7xxx_printk(KERN_ERR, "error reporting device not found:"
  398 + "vendor %x device 0x%x (broken BIOS?)\n",
  399 + PCI_VENDOR_ID_INTEL,
  400 + e7xxx_devs[dev_idx].err_dev);
393 401 goto fail;
394 402 }
395 403  
396   - debugf3("MC: " __FILE__ ": %s(): more mci init\n", __func__);
  404 + debugf3("%s(): more mci init\n", __func__);
397 405 mci->ctl_name = pvt->dev_info->ctl_name;
398 406  
399 407 mci->edac_check = e7xxx_check;
... ... @@ -418,8 +426,8 @@
418 426 pci_read_config_byte(mci->pdev, E7XXX_DRB + index, &value);
419 427 /* convert a 64 or 32 MiB DRB to a page size. */
420 428 cumul_size = value << (25 + drc_drbg - PAGE_SHIFT);
421   - debugf3("MC: " __FILE__ ": %s(): (%d) cumul_size 0x%x\n",
422   - __func__, index, cumul_size);
  429 + debugf3("%s(): (%d) cumul_size 0x%x\n", __func__, index,
  430 + cumul_size);
423 431 if (cumul_size == last_cumul_size)
424 432 continue; /* not populated */
425 433  
... ... @@ -449,8 +457,7 @@
449 457  
450 458 mci->edac_cap |= EDAC_FLAG_NONE;
451 459  
452   - debugf3("MC: " __FILE__ ": %s(): tolm, remapbase, remaplimit\n",
453   - __func__);
  460 + debugf3("%s(): tolm, remapbase, remaplimit\n", __func__);
454 461 /* load the top of low memory, remap base, and remap limit vars */
455 462 pci_read_config_word(mci->pdev, E7XXX_TOLM, &pci_data);
456 463 pvt->tolm = ((u32) pci_data) << 4;
457 464  
458 465  
... ... @@ -458,22 +465,21 @@
458 465 pvt->remapbase = ((u32) pci_data) << 14;
459 466 pci_read_config_word(mci->pdev, E7XXX_REMAPLIMIT, &pci_data);
460 467 pvt->remaplimit = ((u32) pci_data) << 14;
461   - printk("tolm = %x, remapbase = %x, remaplimit = %x\n", pvt->tolm,
462   - pvt->remapbase, pvt->remaplimit);
  468 + e7xxx_printk(KERN_INFO,
  469 + "tolm = %x, remapbase = %x, remaplimit = %x\n",
  470 + pvt->tolm, pvt->remapbase, pvt->remaplimit);
463 471  
464 472 /* clear any pending errors, or initial state bits */
465 473 pci_write_bits8(pvt->bridge_ck, E7XXX_DRAM_FERR, 0x03, 0x03);
466 474 pci_write_bits8(pvt->bridge_ck, E7XXX_DRAM_NERR, 0x03, 0x03);
467 475  
468 476 if (edac_mc_add_mc(mci) != 0) {
469   - debugf3("MC: " __FILE__
470   - ": %s(): failed edac_mc_add_mc()\n",
471   - __func__);
  477 + debugf3("%s(): failed edac_mc_add_mc()\n", __func__);
472 478 goto fail;
473 479 }
474 480  
475 481 /* get this far and it's successful */
476   - debugf3("MC: " __FILE__ ": %s(): success\n", __func__);
  482 + debugf3("%s(): success\n", __func__);
477 483 return 0;
478 484  
479 485 fail:
... ... @@ -490,7 +496,7 @@
490 496 static int __devinit
491 497 e7xxx_init_one(struct pci_dev *pdev, const struct pci_device_id *ent)
492 498 {
493   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  499 + debugf0("%s()\n", __func__);
494 500  
495 501 /* wake up and enable device */
496 502 return pci_enable_device(pdev) ?
... ... @@ -503,7 +509,7 @@
503 509 struct mem_ctl_info *mci;
504 510 struct e7xxx_pvt *pvt;
505 511  
506   - debugf0(__FILE__ ": %s()\n", __func__);
  512 + debugf0("%s()\n", __func__);
507 513  
508 514 if (((mci = edac_mc_find_mci_by_pdev(pdev)) != 0) &&
509 515 edac_mc_del_mc(mci)) {
drivers/edac/edac_mc.c
... ... @@ -37,7 +37,7 @@
37 37  
38 38 #include "edac_mc.h"
39 39  
40   -#define EDAC_MC_VERSION "edac_mc Ver: 2.0.0 " __DATE__
  40 +#define EDAC_MC_VERSION "Ver: 2.0.0 " __DATE__
41 41  
42 42 /* For now, disable the EDAC sysfs code. The sysfs interface that EDAC
43 43 * presents to user space needs more thought, and is likely to change
... ... @@ -243,7 +243,7 @@
243 243 /* Main MC kobject release() function */
244 244 static void edac_memctrl_master_release(struct kobject *kobj)
245 245 {
246   - debugf1("EDAC MC: " __FILE__ ": %s()\n", __func__);
  246 + debugf1("%s()\n", __func__);
247 247 }
248 248  
249 249 static struct kobj_type ktype_memctrl = {
... ... @@ -271,7 +271,7 @@
271 271 {
272 272 int err=0;
273 273  
274   - debugf1("MC: " __FILE__ ": %s()\n", __func__);
  274 + debugf1("%s()\n", __func__);
275 275  
276 276 /* create the /sys/devices/system/edac directory */
277 277 err = sysdev_class_register(&edac_class);
... ... @@ -295,7 +295,7 @@
295 295 }
296 296 }
297 297 } else {
298   - debugf1(KERN_WARNING "__FILE__ %s() error=%d\n", __func__,err);
  298 + debugf1("%s() error=%d\n", __func__, err);
299 299 }
300 300  
301 301 return err;
... ... @@ -567,7 +567,7 @@
567 567 /* No memory to release */
568 568 static void edac_pci_release(struct kobject *kobj)
569 569 {
570   - debugf1("EDAC PCI: " __FILE__ ": %s()\n", __func__);
  570 + debugf1("%s()\n", __func__);
571 571 }
572 572  
573 573 static struct kobj_type ktype_edac_pci = {
... ... @@ -591,7 +591,7 @@
591 591 {
592 592 int err;
593 593  
594   - debugf1("MC: " __FILE__ ": %s()\n", __func__);
  594 + debugf1("%s()\n", __func__);
595 595  
596 596 memset(&edac_pci_kobj, 0, sizeof(edac_pci_kobj));
597 597  
... ... @@ -616,7 +616,7 @@
616 616 static void edac_sysfs_pci_teardown(void)
617 617 {
618 618 #ifndef DISABLE_EDAC_SYSFS
619   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  619 + debugf0("%s()\n", __func__);
620 620  
621 621 kobject_unregister(&edac_pci_kobj);
622 622 kobject_put(&edac_pci_kobj);
... ... @@ -808,7 +808,7 @@
808 808 /* No memory to release */
809 809 static void edac_csrow_instance_release(struct kobject *kobj)
810 810 {
811   - debugf1("EDAC MC: " __FILE__ ": %s()\n", __func__);
  811 + debugf1("%s()\n", __func__);
812 812 }
813 813  
814 814 static struct kobj_type ktype_csrow = {
... ... @@ -823,7 +823,7 @@
823 823 {
824 824 int err = 0;
825 825  
826   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  826 + debugf0("%s()\n", __func__);
827 827  
828 828 memset(&csrow->kobj, 0, sizeof(csrow->kobj));
829 829  
... ... @@ -1066,8 +1066,7 @@
1066 1066 struct mem_ctl_info *mci;
1067 1067 mci = container_of(kobj,struct mem_ctl_info,edac_mci_kobj);
1068 1068  
1069   - debugf0("MC: " __FILE__ ": %s() idx=%d calling kfree\n",
1070   - __func__, mci->mc_idx);
  1069 + debugf0("%s() idx=%d calling kfree\n", __func__, mci->mc_idx);
1071 1070  
1072 1071 kfree(mci);
1073 1072 }
... ... @@ -1102,7 +1101,7 @@
1102 1101 struct csrow_info *csrow;
1103 1102 struct kobject *edac_mci_kobj=&mci->edac_mci_kobj;
1104 1103  
1105   - debugf0("MC: " __FILE__ ": %s() idx=%d\n", __func__, mci->mc_idx);
  1104 + debugf0("%s() idx=%d\n", __func__, mci->mc_idx);
1106 1105  
1107 1106 memset(edac_mci_kobj, 0, sizeof(*edac_mci_kobj));
1108 1107 kobject_init(edac_mci_kobj);
... ... @@ -1174,7 +1173,7 @@
1174 1173 #ifndef DISABLE_EDAC_SYSFS
1175 1174 int i;
1176 1175  
1177   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  1176 + debugf0("%s()\n", __func__);
1178 1177  
1179 1178 /* remove all csrow kobjects */
1180 1179 for (i = 0; i < mci->nr_csrows; i++) {
... ... @@ -1396,7 +1395,7 @@
1396 1395 struct mem_ctl_info *mci;
1397 1396 struct list_head *item;
1398 1397  
1399   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  1398 + debugf3("%s()\n", __func__);
1400 1399  
1401 1400 list_for_each(item, &mc_devices) {
1402 1401 mci = list_entry(item, struct mem_ctl_info, link);
... ... @@ -1419,10 +1418,11 @@
1419 1418 insert_before = &mc_devices;
1420 1419 } else {
1421 1420 if (edac_mc_find_mci_by_pdev(mci->pdev)) {
1422   - printk(KERN_WARNING
1423   - "EDAC MC: %s (%s) %s %s already assigned %d\n",
1424   - mci->pdev->dev.bus_id, pci_name(mci->pdev),
1425   - mci->mod_name, mci->ctl_name, mci->mc_idx);
  1421 + edac_printk(KERN_WARNING, EDAC_MC,
  1422 + "%s (%s) %s %s already assigned %d\n",
  1423 + mci->pdev->dev.bus_id,
  1424 + pci_name(mci->pdev), mci->mod_name,
  1425 + mci->ctl_name, mci->mc_idx);
1426 1426 return 1;
1427 1427 }
1428 1428  
... ... @@ -1468,7 +1468,7 @@
1468 1468 {
1469 1469 int rc = 1;
1470 1470  
1471   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  1471 + debugf0("%s()\n", __func__);
1472 1472 #ifdef CONFIG_EDAC_DEBUG
1473 1473 if (edac_debug_level >= 3)
1474 1474 edac_mc_dump_mci(mci);
1475 1475  
1476 1476  
... ... @@ -1493,20 +1493,16 @@
1493 1493 mci->start_time = jiffies;
1494 1494  
1495 1495 if (edac_create_sysfs_mci_device(mci)) {
1496   - printk(KERN_WARNING
1497   - "EDAC MC%d: failed to create sysfs device\n",
1498   - mci->mc_idx);
  1496 + edac_mc_printk(mci, KERN_WARNING,
  1497 + "failed to create sysfs device\n");
1499 1498 /* FIXME - should there be an error code and unwind? */
1500 1499 goto finish;
1501 1500 }
1502 1501  
1503 1502 /* Report action taken */
1504   - printk(KERN_INFO
1505   - "EDAC MC%d: Giving out device to %s %s: PCI %s\n",
1506   - mci->mc_idx, mci->mod_name, mci->ctl_name,
1507   - pci_name(mci->pdev));
  1503 + edac_mc_printk(mci, KERN_INFO, "Giving out device to %s %s: PCI %s\n",
  1504 + mci->mod_name, mci->ctl_name, pci_name(mci->pdev));
1508 1505  
1509   -
1510 1506 rc = 0;
1511 1507  
1512 1508 finish:
1513 1509  
... ... @@ -1547,13 +1543,12 @@
1547 1543 {
1548 1544 int rc = 1;
1549 1545  
1550   - debugf0("MC%d: " __FILE__ ": %s()\n", mci->mc_idx, __func__);
  1546 + debugf0("MC%d: %s()\n", mci->mc_idx, __func__);
1551 1547 down(&mem_ctls_mutex);
1552 1548 del_mc_from_global_list(mci);
1553   - printk(KERN_INFO
1554   - "EDAC MC%d: Removed device %d for %s %s: PCI %s\n",
1555   - mci->mc_idx, mci->mc_idx, mci->mod_name, mci->ctl_name,
1556   - pci_name(mci->pdev));
  1549 + edac_printk(KERN_INFO, EDAC_MC,
  1550 + "Removed device %d for %s %s: PCI %s\n", mci->mc_idx,
  1551 + mci->mod_name, mci->ctl_name, pci_name(mci->pdev));
1557 1552 rc = 0;
1558 1553 up(&mem_ctls_mutex);
1559 1554  
... ... @@ -1570,7 +1565,7 @@
1570 1565 void *virt_addr;
1571 1566 unsigned long flags = 0;
1572 1567  
1573   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  1568 + debugf3("%s()\n", __func__);
1574 1569  
1575 1570 /* ECC error page was not in our memory. Ignore it. */
1576 1571 if(!pfn_valid(page))
... ... @@ -1604,8 +1599,7 @@
1604 1599 struct csrow_info *csrows = mci->csrows;
1605 1600 int row, i;
1606 1601  
1607   - debugf1("MC%d: " __FILE__ ": %s(): 0x%lx\n", mci->mc_idx, __func__,
1608   - page);
  1602 + debugf1("MC%d: %s(): 0x%lx\n", mci->mc_idx, __func__, page);
1609 1603 row = -1;
1610 1604  
1611 1605 for (i = 0; i < mci->nr_csrows; i++) {
... ... @@ -1614,11 +1608,10 @@
1614 1608 if (csrow->nr_pages == 0)
1615 1609 continue;
1616 1610  
1617   - debugf3("MC%d: " __FILE__
1618   - ": %s(): first(0x%lx) page(0x%lx)"
1619   - " last(0x%lx) mask(0x%lx)\n", mci->mc_idx,
1620   - __func__, csrow->first_page, page,
1621   - csrow->last_page, csrow->page_mask);
  1611 + debugf3("MC%d: %s(): first(0x%lx) page(0x%lx) last(0x%lx) "
  1612 + "mask(0x%lx)\n", mci->mc_idx, __func__,
  1613 + csrow->first_page, page, csrow->last_page,
  1614 + csrow->page_mask);
1622 1615  
1623 1616 if ((page >= csrow->first_page) &&
1624 1617 (page <= csrow->last_page) &&
... ... @@ -1630,9 +1623,9 @@
1630 1623 }
1631 1624  
1632 1625 if (row == -1)
1633   - printk(KERN_ERR
1634   - "EDAC MC%d: could not look up page error address %lx\n",
1635   - mci->mc_idx, (unsigned long) page);
  1626 + edac_mc_printk(mci, KERN_ERR,
  1627 + "could not look up page error address %lx\n",
  1628 + (unsigned long) page);
1636 1629  
1637 1630 return row;
1638 1631 }
1639 1632  
1640 1633  
1641 1634  
... ... @@ -1650,36 +1643,35 @@
1650 1643 {
1651 1644 unsigned long remapped_page;
1652 1645  
1653   - debugf3("MC%d: " __FILE__ ": %s()\n", mci->mc_idx, __func__);
  1646 + debugf3("MC%d: %s()\n", mci->mc_idx, __func__);
1654 1647  
1655 1648 /* FIXME - maybe make panic on INTERNAL ERROR an option */
1656 1649 if (row >= mci->nr_csrows || row < 0) {
1657 1650 /* something is wrong */
1658   - printk(KERN_ERR
1659   - "EDAC MC%d: INTERNAL ERROR: row out of range (%d >= %d)\n",
1660   - mci->mc_idx, row, mci->nr_csrows);
  1651 + edac_mc_printk(mci, KERN_ERR,
  1652 + "INTERNAL ERROR: row out of range "
  1653 + "(%d >= %d)\n", row, mci->nr_csrows);
1661 1654 edac_mc_handle_ce_no_info(mci, "INTERNAL ERROR");
1662 1655 return;
1663 1656 }
1664 1657 if (channel >= mci->csrows[row].nr_channels || channel < 0) {
1665 1658 /* something is wrong */
1666   - printk(KERN_ERR
1667   - "EDAC MC%d: INTERNAL ERROR: channel out of range "
1668   - "(%d >= %d)\n",
1669   - mci->mc_idx, channel, mci->csrows[row].nr_channels);
  1659 + edac_mc_printk(mci, KERN_ERR,
  1660 + "INTERNAL ERROR: channel out of range "
  1661 + "(%d >= %d)\n", channel,
  1662 + mci->csrows[row].nr_channels);
1670 1663 edac_mc_handle_ce_no_info(mci, "INTERNAL ERROR");
1671 1664 return;
1672 1665 }
1673 1666  
1674 1667 if (log_ce)
1675 1668 /* FIXME - put in DIMM location */
1676   - printk(KERN_WARNING
1677   - "EDAC MC%d: CE page 0x%lx, offset 0x%lx,"
1678   - " grain %d, syndrome 0x%lx, row %d, channel %d,"
1679   - " label \"%s\": %s\n", mci->mc_idx,
1680   - page_frame_number, offset_in_page,
1681   - mci->csrows[row].grain, syndrome, row, channel,
1682   - mci->csrows[row].channels[channel].label, msg);
  1669 + edac_mc_printk(mci, KERN_WARNING,
  1670 + "CE page 0x%lx, offset 0x%lx, grain %d, syndrome "
  1671 + "0x%lx, row %d, channel %d, label \"%s\": %s\n",
  1672 + page_frame_number, offset_in_page,
  1673 + mci->csrows[row].grain, syndrome, row, channel,
  1674 + mci->csrows[row].channels[channel].label, msg);
1683 1675  
1684 1676 mci->ce_count++;
1685 1677 mci->csrows[row].ce_count++;
... ... @@ -1711,9 +1703,8 @@
1711 1703 const char *msg)
1712 1704 {
1713 1705 if (log_ce)
1714   - printk(KERN_WARNING
1715   - "EDAC MC%d: CE - no information available: %s\n",
1716   - mci->mc_idx, msg);
  1706 + edac_mc_printk(mci, KERN_WARNING,
  1707 + "CE - no information available: %s\n", msg);
1717 1708 mci->ce_noinfo_count++;
1718 1709 mci->ce_count++;
1719 1710 }
1720 1711  
... ... @@ -1732,14 +1723,14 @@
1732 1723 int chan;
1733 1724 int chars;
1734 1725  
1735   - debugf3("MC%d: " __FILE__ ": %s()\n", mci->mc_idx, __func__);
  1726 + debugf3("MC%d: %s()\n", mci->mc_idx, __func__);
1736 1727  
1737 1728 /* FIXME - maybe make panic on INTERNAL ERROR an option */
1738 1729 if (row >= mci->nr_csrows || row < 0) {
1739 1730 /* something is wrong */
1740   - printk(KERN_ERR
1741   - "EDAC MC%d: INTERNAL ERROR: row out of range (%d >= %d)\n",
1742   - mci->mc_idx, row, mci->nr_csrows);
  1731 + edac_mc_printk(mci, KERN_ERR,
  1732 + "INTERNAL ERROR: row out of range "
  1733 + "(%d >= %d)\n", row, mci->nr_csrows);
1743 1734 edac_mc_handle_ue_no_info(mci, "INTERNAL ERROR");
1744 1735 return;
1745 1736 }
... ... @@ -1757,11 +1748,11 @@
1757 1748 }
1758 1749  
1759 1750 if (log_ue)
1760   - printk(KERN_EMERG
1761   - "EDAC MC%d: UE page 0x%lx, offset 0x%lx, grain %d, row %d,"
1762   - " labels \"%s\": %s\n", mci->mc_idx,
1763   - page_frame_number, offset_in_page,
1764   - mci->csrows[row].grain, row, labels, msg);
  1751 + edac_mc_printk(mci, KERN_EMERG,
  1752 + "UE page 0x%lx, offset 0x%lx, grain %d, row %d, "
  1753 + "labels \"%s\": %s\n", page_frame_number,
  1754 + offset_in_page, mci->csrows[row].grain, row, labels,
  1755 + msg);
1765 1756  
1766 1757 if (panic_on_ue)
1767 1758 panic
... ... @@ -1784,9 +1775,8 @@
1784 1775 panic("EDAC MC%d: Uncorrected Error", mci->mc_idx);
1785 1776  
1786 1777 if (log_ue)
1787   - printk(KERN_WARNING
1788   - "EDAC MC%d: UE - no information available: %s\n",
1789   - mci->mc_idx, msg);
  1778 + edac_mc_printk(mci, KERN_WARNING,
  1779 + "UE - no information available: %s\n", msg);
1790 1780 mci->ue_noinfo_count++;
1791 1781 mci->ue_count++;
1792 1782 }
1793 1783  
1794 1784  
1795 1785  
1796 1786  
1797 1787  
... ... @@ -1856,25 +1846,22 @@
1856 1846 /* check the status reg for errors */
1857 1847 if (status) {
1858 1848 if (status & (PCI_STATUS_SIG_SYSTEM_ERROR))
1859   - printk(KERN_CRIT
1860   - "EDAC PCI- "
  1849 + edac_printk(KERN_CRIT, EDAC_PCI,
1861 1850 "Signaled System Error on %s\n",
1862   - pci_name (dev));
  1851 + pci_name(dev));
1863 1852  
1864 1853 if (status & (PCI_STATUS_PARITY)) {
1865   - printk(KERN_CRIT
1866   - "EDAC PCI- "
  1854 + edac_printk(KERN_CRIT, EDAC_PCI,
1867 1855 "Master Data Parity Error on %s\n",
1868   - pci_name (dev));
  1856 + pci_name(dev));
1869 1857  
1870 1858 atomic_inc(&pci_parity_count);
1871 1859 }
1872 1860  
1873 1861 if (status & (PCI_STATUS_DETECTED_PARITY)) {
1874   - printk(KERN_CRIT
1875   - "EDAC PCI- "
  1862 + edac_printk(KERN_CRIT, EDAC_PCI,
1876 1863 "Detected Parity Error on %s\n",
1877   - pci_name (dev));
  1864 + pci_name(dev));
1878 1865  
1879 1866 atomic_inc(&pci_parity_count);
1880 1867 }
1881 1868  
1882 1869  
1883 1870  
1884 1871  
... ... @@ -1895,25 +1882,22 @@
1895 1882 /* check the secondary status reg for errors */
1896 1883 if (status) {
1897 1884 if (status & (PCI_STATUS_SIG_SYSTEM_ERROR))
1898   - printk(KERN_CRIT
1899   - "EDAC PCI-Bridge- "
  1885 + edac_printk(KERN_CRIT, EDAC_PCI, "Bridge "
1900 1886 "Signaled System Error on %s\n",
1901   - pci_name (dev));
  1887 + pci_name(dev));
1902 1888  
1903 1889 if (status & (PCI_STATUS_PARITY)) {
1904   - printk(KERN_CRIT
1905   - "EDAC PCI-Bridge- "
1906   - "Master Data Parity Error on %s\n",
1907   - pci_name (dev));
  1890 + edac_printk(KERN_CRIT, EDAC_PCI, "Bridge "
  1891 + "Master Data Parity Error on "
  1892 + "%s\n", pci_name(dev));
1908 1893  
1909 1894 atomic_inc(&pci_parity_count);
1910 1895 }
1911 1896  
1912 1897 if (status & (PCI_STATUS_DETECTED_PARITY)) {
1913   - printk(KERN_CRIT
1914   - "EDAC PCI-Bridge- "
  1898 + edac_printk(KERN_CRIT, EDAC_PCI, "Bridge "
1915 1899 "Detected Parity Error on %s\n",
1916   - pci_name (dev));
  1900 + pci_name(dev));
1917 1901  
1918 1902 atomic_inc(&pci_parity_count);
1919 1903 }
... ... @@ -1992,7 +1976,7 @@
1992 1976 unsigned long flags;
1993 1977 int before_count;
1994 1978  
1995   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  1979 + debugf3("%s()\n", __func__);
1996 1980  
1997 1981 if (!check_pci_parity)
1998 1982 return;
... ... @@ -2050,7 +2034,7 @@
2050 2034 struct list_head *item;
2051 2035 struct mem_ctl_info *mci;
2052 2036  
2053   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  2037 + debugf3("%s()\n", __func__);
2054 2038  
2055 2039 /* during poll, have interrupts off */
2056 2040 local_irq_save(flags);
2057 2041  
... ... @@ -2076,10 +2060,8 @@
2076 2060 */
2077 2061 static void do_edac_check(void)
2078 2062 {
2079   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
2080   -
  2063 + debugf3("%s()\n", __func__);
2081 2064 check_mc_devices();
2082   -
2083 2065 do_pci_parity_check();
2084 2066 }
2085 2067  
... ... @@ -2102,7 +2084,7 @@
2102 2084 */
2103 2085 static int __init edac_mc_init(void)
2104 2086 {
2105   - printk(KERN_INFO "MC: " __FILE__ " version " EDAC_MC_VERSION "\n");
  2087 + edac_printk(KERN_INFO, EDAC_MC, EDAC_MC_VERSION "\n");
2106 2088  
2107 2089 /*
2108 2090 * Harvest and clear any boot/initialization PCI parity errors
2109 2091  
... ... @@ -2118,14 +2100,16 @@
2118 2100  
2119 2101 /* Create the MC sysfs entires */
2120 2102 if (edac_sysfs_memctrl_setup()) {
2121   - printk(KERN_ERR "EDAC MC: Error initializing sysfs code\n");
  2103 + edac_printk(KERN_ERR, EDAC_MC,
  2104 + "Error initializing sysfs code\n");
2122 2105 return -ENODEV;
2123 2106 }
2124 2107  
2125 2108 /* Create the PCI parity sysfs entries */
2126 2109 if (edac_sysfs_pci_setup()) {
2127 2110 edac_sysfs_memctrl_teardown();
2128   - printk(KERN_ERR "EDAC PCI: Error initializing sysfs code\n");
  2111 + edac_printk(KERN_ERR, EDAC_MC,
  2112 + "EDAC PCI: Error initializing sysfs code\n");
2129 2113 return -ENODEV;
2130 2114 }
2131 2115  
... ... @@ -2148,7 +2132,7 @@
2148 2132 */
2149 2133 static void __exit edac_mc_exit(void)
2150 2134 {
2151   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  2135 + debugf0("%s()\n", __func__);
2152 2136  
2153 2137 kthread_stop(edac_thread);
2154 2138  
drivers/edac/edac_mc.h
... ... @@ -43,10 +43,29 @@
43 43 #define PAGES_TO_MiB( pages ) ( ( pages ) << ( PAGE_SHIFT - 20 ) )
44 44 #endif
45 45  
  46 +#define edac_printk(level, prefix, fmt, arg...) \
  47 + printk(level "EDAC " prefix ": " fmt, ##arg)
  48 +
  49 +#define edac_mc_printk(mci, level, fmt, arg...) \
  50 + printk(level "EDAC MC%d: " fmt, mci->mc_idx, ##arg)
  51 +
  52 +#define edac_mc_chipset_printk(mci, level, prefix, fmt, arg...) \
  53 + printk(level "EDAC " prefix " MC%d: " fmt, mci->mc_idx, ##arg)
  54 +
  55 +/* prefixes for edac_printk() and edac_mc_printk() */
  56 +#define EDAC_MC "MC"
  57 +#define EDAC_PCI "PCI"
  58 +#define EDAC_DEBUG "DEBUG"
  59 +
46 60 #ifdef CONFIG_EDAC_DEBUG
47 61 extern int edac_debug_level;
48   -#define edac_debug_printk(level, fmt, args...) \
49   -do { if (level <= edac_debug_level) printk(KERN_DEBUG fmt, ##args); } while(0)
  62 +
  63 +#define edac_debug_printk(level, fmt, arg...) \
  64 + do { \
  65 + if (level <= edac_debug_level) \
  66 + edac_printk(KERN_DEBUG, EDAC_DEBUG, fmt, ##arg); \
  67 + } while(0)
  68 +
50 69 #define debugf0( ... ) edac_debug_printk(0, __VA_ARGS__ )
51 70 #define debugf1( ... ) edac_debug_printk(1, __VA_ARGS__ )
52 71 #define debugf2( ... ) edac_debug_printk(2, __VA_ARGS__ )
drivers/edac/i82860_edac.c
... ... @@ -19,6 +19,14 @@
19 19 #include "edac_mc.h"
20 20  
21 21  
  22 +#define i82860_printk(level, fmt, arg...) \
  23 + edac_printk(level, "i82860", fmt, ##arg)
  24 +
  25 +
  26 +#define i82860_mc_printk(mci, level, fmt, arg...) \
  27 + edac_mc_chipset_printk(mci, level, "i82860", fmt, ##arg)
  28 +
  29 +
22 30 #ifndef PCI_DEVICE_ID_INTEL_82860_0
23 31 #define PCI_DEVICE_ID_INTEL_82860_0 0x2531
24 32 #endif /* PCI_DEVICE_ID_INTEL_82860_0 */
... ... @@ -117,7 +125,7 @@
117 125 {
118 126 struct i82860_error_info info;
119 127  
120   - debugf1("MC%d: " __FILE__ ": %s()\n", mci->mc_idx, __func__);
  128 + debugf1("MC%d: %s()\n", mci->mc_idx, __func__);
121 129 i82860_get_error_info(mci, &info);
122 130 i82860_process_error_info(mci, &info, 1);
123 131 }
... ... @@ -143,7 +151,7 @@
143 151 if (!mci)
144 152 return -ENOMEM;
145 153  
146   - debugf3("MC: " __FILE__ ": %s(): init mci\n", __func__);
  154 + debugf3("%s(): init mci\n", __func__);
147 155  
148 156 mci->pdev = pdev;
149 157 mci->mtype_cap = MEM_FLAG_DDR;
... ... @@ -179,8 +187,8 @@
179 187  
180 188 cumul_size = (value & I82860_GBA_MASK) <<
181 189 (I82860_GBA_SHIFT - PAGE_SHIFT);
182   - debugf3("MC: " __FILE__ ": %s(): (%d) cumul_size 0x%x\n",
183   - __func__, index, cumul_size);
  190 + debugf3("%s(): (%d) cumul_size 0x%x\n", __func__, index,
  191 + cumul_size);
184 192 if (cumul_size == last_cumul_size)
185 193 continue; /* not populated */
186 194  
187 195  
... ... @@ -198,13 +206,11 @@
198 206 pci_write_bits16(mci->pdev, I82860_ERRSTS, 0x0003, 0x0003);
199 207  
200 208 if (edac_mc_add_mc(mci)) {
201   - debugf3("MC: " __FILE__
202   - ": %s(): failed edac_mc_add_mc()\n",
203   - __func__);
  209 + debugf3("%s(): failed edac_mc_add_mc()\n", __func__);
204 210 edac_mc_free(mci);
205 211 } else {
206 212 /* get this far and it's successful */
207   - debugf3("MC: " __FILE__ ": %s(): success\n", __func__);
  213 + debugf3("%s(): success\n", __func__);
208 214 rc = 0;
209 215 }
210 216 return rc;
211 217  
... ... @@ -216,9 +222,9 @@
216 222 {
217 223 int rc;
218 224  
219   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  225 + debugf0("%s()\n", __func__);
220 226  
221   - printk(KERN_INFO "i82860 init one\n");
  227 + i82860_printk(KERN_INFO, "i82860 init one\n");
222 228 if(pci_enable_device(pdev) < 0)
223 229 return -EIO;
224 230 rc = i82860_probe1(pdev, ent->driver_data);
... ... @@ -231,7 +237,7 @@
231 237 {
232 238 struct mem_ctl_info *mci;
233 239  
234   - debugf0(__FILE__ ": %s()\n", __func__);
  240 + debugf0("%s()\n", __func__);
235 241  
236 242 mci = edac_mc_find_mci_by_pdev(pdev);
237 243 if ((mci != NULL) && (edac_mc_del_mc(mci) == 0))
... ... @@ -257,7 +263,7 @@
257 263 {
258 264 int pci_rc;
259 265  
260   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  266 + debugf3("%s()\n", __func__);
261 267 if ((pci_rc = pci_register_driver(&i82860_driver)) < 0)
262 268 return pci_rc;
263 269  
... ... @@ -281,7 +287,7 @@
281 287  
282 288 static void __exit i82860_exit(void)
283 289 {
284   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  290 + debugf3("%s()\n", __func__);
285 291  
286 292 pci_unregister_driver(&i82860_driver);
287 293 if (!i82860_registered) {
drivers/edac/i82875p_edac.c
... ... @@ -26,6 +26,14 @@
26 26 #include "edac_mc.h"
27 27  
28 28  
  29 +#define i82875p_printk(level, fmt, arg...) \
  30 + edac_printk(level, "i82875p", fmt, ##arg)
  31 +
  32 +
  33 +#define i82875p_mc_printk(mci, level, fmt, arg...) \
  34 + edac_mc_chipset_printk(mci, level, "i82875p", fmt, ##arg)
  35 +
  36 +
29 37 #ifndef PCI_DEVICE_ID_INTEL_82875_0
30 38 #define PCI_DEVICE_ID_INTEL_82875_0 0x2578
31 39 #endif /* PCI_DEVICE_ID_INTEL_82875_0 */
... ... @@ -254,7 +262,7 @@
254 262 {
255 263 struct i82875p_error_info info;
256 264  
257   - debugf1("MC%d: " __FILE__ ": %s()\n", mci->mc_idx, __func__);
  265 + debugf1("MC%d: %s()\n", mci->mc_idx, __func__);
258 266 i82875p_get_error_info(mci, &info);
259 267 i82875p_process_error_info(mci, &info, 1);
260 268 }
... ... @@ -279,7 +287,7 @@
279 287 u32 nr_chans;
280 288 u32 drc_ddim; /* DRAM Data Integrity Mode 0=none,2=edac */
281 289  
282   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  290 + debugf0("%s()\n", __func__);
283 291  
284 292 ovrfl_pdev = pci_find_device(PCI_VEND_DEV(INTEL, 82875_6), NULL);
285 293  
286 294  
... ... @@ -298,16 +306,16 @@
298 306 }
299 307 #ifdef CONFIG_PROC_FS
300 308 if (!ovrfl_pdev->procent && pci_proc_attach_device(ovrfl_pdev)) {
301   - printk(KERN_ERR "MC: " __FILE__
302   - ": %s(): Failed to attach overflow device\n",
303   - __func__);
  309 + i82875p_printk(KERN_ERR,
  310 + "%s(): Failed to attach overflow device\n",
  311 + __func__);
304 312 goto fail;
305 313 }
306 314 #endif /* CONFIG_PROC_FS */
307 315 if (pci_enable_device(ovrfl_pdev)) {
308   - printk(KERN_ERR "MC: " __FILE__
309   - ": %s(): Failed to enable overflow device\n",
310   - __func__);
  316 + i82875p_printk(KERN_ERR,
  317 + "%s(): Failed to enable overflow device\n",
  318 + __func__);
311 319 goto fail;
312 320 }
313 321  
... ... @@ -321,8 +329,8 @@
321 329 pci_resource_len(ovrfl_pdev, 0));
322 330  
323 331 if (!ovrfl_window) {
324   - printk(KERN_ERR "MC: " __FILE__
325   - ": %s(): Failed to ioremap bar6\n", __func__);
  332 + i82875p_printk(KERN_ERR, "%s(): Failed to ioremap bar6\n",
  333 + __func__);
326 334 goto fail;
327 335 }
328 336  
... ... @@ -340,7 +348,7 @@
340 348 goto fail;
341 349 }
342 350  
343   - debugf3("MC: " __FILE__ ": %s(): init mci\n", __func__);
  351 + debugf3("%s(): init mci\n", __func__);
344 352  
345 353 mci->pdev = pdev;
346 354 mci->mtype_cap = MEM_FLAG_DDR;
... ... @@ -355,7 +363,7 @@
355 363 mci->edac_check = i82875p_check;
356 364 mci->ctl_page_to_phys = NULL;
357 365  
358   - debugf3("MC: " __FILE__ ": %s(): init pvt\n", __func__);
  366 + debugf3("%s(): init pvt\n", __func__);
359 367  
360 368 pvt = (struct i82875p_pvt *) mci->pvt_info;
361 369 pvt->ovrfl_pdev = ovrfl_pdev;
... ... @@ -374,8 +382,8 @@
374 382  
375 383 value = readb(ovrfl_window + I82875P_DRB + index);
376 384 cumul_size = value << (I82875P_DRB_SHIFT - PAGE_SHIFT);
377   - debugf3("MC: " __FILE__ ": %s(): (%d) cumul_size 0x%x\n",
378   - __func__, index, cumul_size);
  385 + debugf3("%s(): (%d) cumul_size 0x%x\n", __func__, index,
  386 + cumul_size);
379 387 if (cumul_size == last_cumul_size)
380 388 continue; /* not populated */
381 389  
382 390  
... ... @@ -393,13 +401,12 @@
393 401 pci_write_bits16(mci->pdev, I82875P_ERRSTS, 0x0081, 0x0081);
394 402  
395 403 if (edac_mc_add_mc(mci)) {
396   - debugf3("MC: " __FILE__
397   - ": %s(): failed edac_mc_add_mc()\n", __func__);
  404 + debugf3("%s(): failed edac_mc_add_mc()\n", __func__);
398 405 goto fail;
399 406 }
400 407  
401 408 /* get this far and it's successful */
402   - debugf3("MC: " __FILE__ ": %s(): success\n", __func__);
  409 + debugf3("%s(): success\n", __func__);
403 410 return 0;
404 411  
405 412 fail:
406 413  
... ... @@ -425,9 +432,9 @@
425 432 {
426 433 int rc;
427 434  
428   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  435 + debugf0("%s()\n", __func__);
429 436  
430   - printk(KERN_INFO "i82875p init one\n");
  437 + i82875p_printk(KERN_INFO, "i82875p init one\n");
431 438 if(pci_enable_device(pdev) < 0)
432 439 return -EIO;
433 440 rc = i82875p_probe1(pdev, ent->driver_data);
... ... @@ -442,7 +449,7 @@
442 449 struct mem_ctl_info *mci;
443 450 struct i82875p_pvt *pvt = NULL;
444 451  
445   - debugf0(__FILE__ ": %s()\n", __func__);
  452 + debugf0("%s()\n", __func__);
446 453  
447 454 if ((mci = edac_mc_find_mci_by_pdev(pdev)) == NULL)
448 455 return;
... ... @@ -487,7 +494,7 @@
487 494 {
488 495 int pci_rc;
489 496  
490   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  497 + debugf3("%s()\n", __func__);
491 498 pci_rc = pci_register_driver(&i82875p_driver);
492 499 if (pci_rc < 0)
493 500 return pci_rc;
... ... @@ -513,7 +520,7 @@
513 520  
514 521 static void __exit i82875p_exit(void)
515 522 {
516   - debugf3("MC: " __FILE__ ": %s()\n", __func__);
  523 + debugf3("%s()\n", __func__);
517 524  
518 525 pci_unregister_driver(&i82875p_driver);
519 526 if (!i82875p_registered) {
drivers/edac/r82600_edac.c
... ... @@ -26,6 +26,12 @@
26 26  
27 27 #include "edac_mc.h"
28 28  
  29 +#define r82600_printk(level, fmt, arg...) \
  30 + edac_printk(level, "r82600", fmt, ##arg)
  31 +
  32 +#define r82600_mc_printk(mci, level, fmt, arg...) \
  33 + edac_mc_chipset_printk(mci, level, "r82600", fmt, ##arg)
  34 +
29 35 /* Radisys say "The 82600 integrates a main memory SDRAM controller that
30 36 * supports up to four banks of memory. The four banks can support a mix of
31 37 * sizes of 64 bit wide (72 bits with ECC) Synchronous DRAM (SDRAM) DIMMs,
... ... @@ -196,7 +202,7 @@
196 202 {
197 203 struct r82600_error_info info;
198 204  
199   - debugf1("MC%d: " __FILE__ ": %s()\n", mci->mc_idx, __func__);
  205 + debugf1("MC%d: %s()\n", mci->mc_idx, __func__);
200 206 r82600_get_error_info(mci, &info);
201 207 r82600_process_error_info(mci, &info, 1);
202 208 }
... ... @@ -215,7 +221,7 @@
215 221 u32 row_high_limit_last = 0;
216 222 u32 eap_init_bits;
217 223  
218   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  224 + debugf0("%s()\n", __func__);
219 225  
220 226  
221 227 pci_read_config_byte(pdev, R82600_DRAMC, &dramcr);
222 228  
... ... @@ -226,11 +232,10 @@
226 232 scrub_disabled = eapr & BIT(31);
227 233 sdram_refresh_rate = dramcr & (BIT(0) | BIT(1));
228 234  
229   - debugf2("MC: " __FILE__ ": %s(): sdram refresh rate = %#0x\n",
230   - __func__, sdram_refresh_rate);
  235 + debugf2("%s(): sdram refresh rate = %#0x\n", __func__,
  236 + sdram_refresh_rate);
231 237  
232   - debugf2("MC: " __FILE__ ": %s(): DRAMC register = %#0x\n", __func__,
233   - dramcr);
  238 + debugf2("%s(): DRAMC register = %#0x\n", __func__, dramcr);
234 239  
235 240 mci = edac_mc_alloc(0, R82600_NR_CSROWS, R82600_NR_CHANS);
236 241  
... ... @@ -239,7 +244,7 @@
239 244 goto fail;
240 245 }
241 246  
242   - debugf0("MC: " __FILE__ ": %s(): mci = %p\n", __func__, mci);
  247 + debugf0("%s(): mci = %p\n", __func__, mci);
243 248  
244 249 mci->pdev = pdev;
245 250 mci->mtype_cap = MEM_FLAG_RDDR | MEM_FLAG_DDR;
... ... @@ -255,9 +260,8 @@
255 260 mci->edac_cap = EDAC_FLAG_NONE | EDAC_FLAG_EC | EDAC_FLAG_SECDED;
256 261 if (ecc_on) {
257 262 if (scrub_disabled)
258   - debugf3("MC: " __FILE__ ": %s(): mci = %p - "
259   - "Scrubbing disabled! EAP: %#0x\n", __func__,
260   - mci, eapr);
  263 + debugf3("%s(): mci = %p - Scrubbing disabled! EAP: "
  264 + "%#0x\n", __func__, mci, eapr);
261 265 } else
262 266 mci->edac_cap = EDAC_FLAG_NONE;
263 267  
264 268  
... ... @@ -276,16 +280,15 @@
276 280 /* find the DRAM Chip Select Base address and mask */
277 281 pci_read_config_byte(mci->pdev, R82600_DRBA + index, &drbar);
278 282  
279   - debugf1("MC%d: " __FILE__ ": %s() Row=%d DRBA = %#0x\n",
280   - mci->mc_idx, __func__, index, drbar);
  283 + debugf1("MC%d: %s() Row=%d DRBA = %#0x\n", mci->mc_idx,
  284 + __func__, index, drbar);
281 285  
282 286 row_high_limit = ((u32) drbar << 24);
283 287 /* row_high_limit = ((u32)drbar << 24) | 0xffffffUL; */
284 288  
285   - debugf1("MC%d: " __FILE__ ": %s() Row=%d, "
286   - "Boundry Address=%#0x, Last = %#0x \n",
287   - mci->mc_idx, __func__, index, row_high_limit,
288   - row_high_limit_last);
  289 + debugf1("MC%d: %s() Row=%d, Boundry Address=%#0x, Last = "
  290 + "%#0x \n", mci->mc_idx, __func__, index,
  291 + row_high_limit, row_high_limit_last);
289 292  
290 293 /* Empty row [p.57] */
291 294 if (row_high_limit == row_high_limit_last)
... ... @@ -312,8 +315,7 @@
312 315 /* FIXME should we? */
313 316  
314 317 if (edac_mc_add_mc(mci)) {
315   - debugf3("MC: " __FILE__
316   - ": %s(): failed edac_mc_add_mc()\n", __func__);
  318 + debugf3("%s(): failed edac_mc_add_mc()\n", __func__);
317 319 goto fail;
318 320 }
319 321  
320 322  
... ... @@ -325,14 +327,14 @@
325 327 eap_init_bits = BIT(0) & BIT(1);
326 328 if (disable_hardware_scrub) {
327 329 eap_init_bits |= BIT(31);
328   - debugf3("MC: " __FILE__ ": %s(): Disabling Hardware Scrub "
329   - "(scrub on error)\n", __func__);
  330 + debugf3("%s(): Disabling Hardware Scrub (scrub on error)\n",
  331 + __func__);
330 332 }
331 333  
332 334 pci_write_bits32(mci->pdev, R82600_EAP, eap_init_bits,
333 335 eap_init_bits);
334 336  
335   - debugf3("MC: " __FILE__ ": %s(): success\n", __func__);
  337 + debugf3("%s(): success\n", __func__);
336 338 return 0;
337 339  
338 340 fail:
... ... @@ -346,7 +348,7 @@
346 348 static int __devinit r82600_init_one(struct pci_dev *pdev,
347 349 const struct pci_device_id *ent)
348 350 {
349   - debugf0("MC: " __FILE__ ": %s()\n", __func__);
  351 + debugf0("%s()\n", __func__);
350 352  
351 353 /* don't need to call pci_device_enable() */
352 354 return r82600_probe1(pdev, ent->driver_data);
... ... @@ -357,7 +359,7 @@
357 359 {
358 360 struct mem_ctl_info *mci;
359 361  
360   - debugf0(__FILE__ ": %s()\n", __func__);
  362 + debugf0("%s()\n", __func__);
361 363  
362 364 if (((mci = edac_mc_find_mci_by_pdev(pdev)) != NULL) &&
363 365 !edac_mc_del_mc(mci))