Skip to content

Commit

Permalink
i7core_edac: Fix order of lines in i7core_register_mci
Browse files Browse the repository at this point in the history
The flag is_registered is not initialized until mci_bind_devs()
is called.  Refer it properly.

The mci->dev and mci->edac_check is required in edac_mc_add_mc(),
so prepare them just before the call.

Signed-off-by: Hidetoshi Seto <seto.hidetoshi@jp.fujitsu.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
  • Loading branch information
Hidetoshi Seto authored and Mauro Carvalho Chehab committed Oct 24, 2010
1 parent 64c10f6 commit 5939813
Showing 1 changed file with 9 additions and 11 deletions.
20 changes: 9 additions & 11 deletions drivers/edac/i7core_edac.c
Original file line number Diff line number Diff line change
Expand Up @@ -1933,9 +1933,6 @@ static int i7core_register_mci(struct i7core_dev *i7core_dev,
debugf0("MC: " __FILE__ ": %s(): mci = %p, dev = %p\n",
__func__, mci, &i7core_dev->pdev[0]->dev);

/* record ptr to the generic device */
mci->dev = &i7core_dev->pdev[0]->dev;

pvt = mci->pvt_info;
memset(pvt, 0, sizeof(*pvt));

Expand All @@ -1954,21 +1951,22 @@ static int i7core_register_mci(struct i7core_dev *i7core_dev,
mci->dev_name = pci_name(i7core_dev->pdev[0]);
mci->ctl_page_to_phys = NULL;

if (pvt->is_registered)
mci->mc_driver_sysfs_attributes = i7core_sysfs_rdimm_attrs;
else
mci->mc_driver_sysfs_attributes = i7core_sysfs_udimm_attrs;

/* Set the function pointer to an actual operation function */
mci->edac_check = i7core_check_error;

/* Store pci devices at mci for faster access */
rc = mci_bind_devs(mci, i7core_dev);
if (unlikely(rc < 0))
goto fail;

if (pvt->is_registered)
mci->mc_driver_sysfs_attributes = i7core_sysfs_rdimm_attrs;
else
mci->mc_driver_sysfs_attributes = i7core_sysfs_udimm_attrs;

/* Get dimm basic config */
get_dimm_config(mci, &csrow);
/* record ptr to the generic device */
mci->dev = &i7core_dev->pdev[0]->dev;
/* Set the function pointer to an actual operation function */
mci->edac_check = i7core_check_error;

/* add this new MC control structure to EDAC's list of MCs */
if (unlikely(edac_mc_add_mc(mci))) {
Expand Down

0 comments on commit 5939813

Please sign in to comment.