edac: fix module initialization on several modules 2nd time
I implemented opstate_init() as a inline function in linux/edac.h. added calling opstate_init() to: i82443bxgx_edac.c i82860_edac.c i82875p_edac.c i82975x_edac.c I wrote a fixed patch of edac-fix-module-initialization-on-several-modules.patch, and tested building 2.6.25-rc7 with applying this. It was succeed. I think the patch is now correct. Cc: Alan Cox <alan@lxorguk.ukuu.org.uk> Signed-off-by: Hitoshi Mitake <h.mitake@gmail.com> Signed-off-by: Doug Thompson <dougthompson@xmission.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:

committed by
Linus Torvalds

parent
1a45027d1a
commit
c3c52bce69
@@ -1286,16 +1286,6 @@ static int i5000_probe1(struct pci_dev *pdev, int dev_idx)
|
||||
if (PCI_FUNC(pdev->devfn) != 0)
|
||||
return -ENODEV;
|
||||
|
||||
/* make sure error reporting method is sane */
|
||||
switch (edac_op_state) {
|
||||
case EDAC_OPSTATE_POLL:
|
||||
case EDAC_OPSTATE_NMI:
|
||||
break;
|
||||
default:
|
||||
edac_op_state = EDAC_OPSTATE_POLL;
|
||||
break;
|
||||
}
|
||||
|
||||
/* Ask the devices for the number of CSROWS and CHANNELS so
|
||||
* that we can calculate the memory resources, etc
|
||||
*
|
||||
@@ -1478,6 +1468,9 @@ static int __init i5000_init(void)
|
||||
|
||||
debugf2("MC: " __FILE__ ": %s()\n", __func__);
|
||||
|
||||
/* Ensure that the OPSTATE is set correctly for POLL or NMI */
|
||||
opstate_init();
|
||||
|
||||
pci_rc = pci_register_driver(&i5000_driver);
|
||||
|
||||
return (pci_rc < 0) ? pci_rc : 0;
|
||||
@@ -1501,5 +1494,6 @@ MODULE_AUTHOR
|
||||
("Linux Networx (http://lnxi.com) Doug Thompson <norsk5@xmission.com>");
|
||||
MODULE_DESCRIPTION("MC Driver for Intel I5000 memory controllers - "
|
||||
I5000_REVISION);
|
||||
|
||||
module_param(edac_op_state, int, 0444);
|
||||
MODULE_PARM_DESC(edac_op_state, "EDAC Error Reporting state: 0=Poll,1=NMI");
|
||||
|
Reference in New Issue
Block a user