diff options
author | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-04-24 14:05:43 -0400 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@redhat.com> | 2012-06-11 12:23:45 -0400 |
commit | de3910eb79ac8c0f29a11224661c0ebaaf813039 (patch) | |
tree | 44584d6691588b2c18823260be0e44f0c9872d02 /drivers/edac/pasemi_edac.c | |
parent | e39f4ea9b01f137f9e6fa631f3e9088fb9175e91 (diff) |
edac: change the mem allocation scheme to make Documentation/kobject.txt happy
Kernel kobjects have rigid rules: each container object should be
dynamically allocated, and can't be allocated into a single kmalloc.
EDAC never obeyed this rule: it has a single malloc function that
allocates all needed data into a single kzalloc.
As this is not accepted anymore, change the allocation schema of the
EDAC *_info structs to enforce this Kernel standard.
Acked-by: Chris Metcalf <cmetcalf@tilera.com>
Cc: Aristeu Rozanski <arozansk@redhat.com>
Cc: Doug Thompson <norsk5@yahoo.com>
Cc: Greg K H <gregkh@linuxfoundation.org>
Cc: Borislav Petkov <borislav.petkov@amd.com>
Cc: Mark Gross <mark.gross@intel.com>
Cc: Tim Small <tim@buttersideup.com>
Cc: Ranganathan Desikan <ravi@jetztechnologies.com>
Cc: "Arvind R." <arvino55@gmail.com>
Cc: Olof Johansson <olof@lixom.net>
Cc: Egor Martovetsky <egor@pasemi.com>
Cc: Michal Marek <mmarek@suse.cz>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Hitoshi Mitake <h.mitake@gmail.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: Shaohui Xie <Shaohui.Xie@freescale.com>
Cc: linuxppc-dev@lists.ozlabs.org
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/edac/pasemi_edac.c')
-rw-r--r-- | drivers/edac/pasemi_edac.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/edac/pasemi_edac.c b/drivers/edac/pasemi_edac.c index 92becaa8722a..44f73b00df01 100644 --- a/drivers/edac/pasemi_edac.c +++ b/drivers/edac/pasemi_edac.c | |||
@@ -111,14 +111,14 @@ static void pasemi_edac_process_error_info(struct mem_ctl_info *mci, u32 errsta) | |||
111 | if (errsta & (MCDEBUG_ERRSTA_MBE_STATUS | | 111 | if (errsta & (MCDEBUG_ERRSTA_MBE_STATUS | |
112 | MCDEBUG_ERRSTA_RFL_STATUS)) { | 112 | MCDEBUG_ERRSTA_RFL_STATUS)) { |
113 | edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, | 113 | edac_mc_handle_error(HW_EVENT_ERR_UNCORRECTED, mci, |
114 | mci->csrows[cs].first_page, 0, 0, | 114 | mci->csrows[cs]->first_page, 0, 0, |
115 | cs, 0, -1, mci->ctl_name, "", NULL); | 115 | cs, 0, -1, mci->ctl_name, "", NULL); |
116 | } | 116 | } |
117 | 117 | ||
118 | /* correctable/single-bit errors */ | 118 | /* correctable/single-bit errors */ |
119 | if (errsta & MCDEBUG_ERRSTA_SBE_STATUS) | 119 | if (errsta & MCDEBUG_ERRSTA_SBE_STATUS) |
120 | edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, | 120 | edac_mc_handle_error(HW_EVENT_ERR_CORRECTED, mci, |
121 | mci->csrows[cs].first_page, 0, 0, | 121 | mci->csrows[cs]->first_page, 0, 0, |
122 | cs, 0, -1, mci->ctl_name, "", NULL); | 122 | cs, 0, -1, mci->ctl_name, "", NULL); |
123 | } | 123 | } |
124 | 124 | ||
@@ -141,8 +141,8 @@ static int pasemi_edac_init_csrows(struct mem_ctl_info *mci, | |||
141 | int index; | 141 | int index; |
142 | 142 | ||
143 | for (index = 0; index < mci->nr_csrows; index++) { | 143 | for (index = 0; index < mci->nr_csrows; index++) { |
144 | csrow = &mci->csrows[index]; | 144 | csrow = mci->csrows[index]; |
145 | dimm = csrow->channels[0].dimm; | 145 | dimm = csrow->channels[0]->dimm; |
146 | 146 | ||
147 | pci_read_config_dword(pdev, | 147 | pci_read_config_dword(pdev, |
148 | MCDRAM_RANKCFG + (index * 12), | 148 | MCDRAM_RANKCFG + (index * 12), |